Skip to main content

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.

🆕 What's New in v0.13.7

🧹 Decorator Cleanup: Complete deprecation of @adk_tool decorator across all 351 functions - using @strands_tool only for cleaner codebase

📝 Documentation Updates: Enhanced agent prompt and CLAUDE.md with accurate decorator architecture (Google ADK uses signatures, not decorators)

Quality Improvements: Updated all TODO files to v0.13.7 with decorator deprecation notes

Previous Release (v0.13.6)

💬 Enhanced Confirmation Previews: Confirmation dialogs now show meaningful previews of new content being created instead of just old file sizes

📊 Better User Feedback: File writes show content previews, CSV writes show row/column counts with sample data, archive operations show file lists

🎯 Comprehensive Coverage: All 22 confirmation operations now provide context-aware previews for better decision making

Previous Release (v0.13.3)

🔍 Structured Logging: Migrated 157 print statements to Python logging framework with BOAT_LOG_LEVEL environment variable control

🛡️ Enhanced Error Handling: Replaced all assert statements with explicit type checking and descriptive error messages

🧹 Code Quality: Improved type safety and debugging with proper exception raising patterns

Previous Release (v0.13.2)

🎛️ Enhanced Confirmation System: Hybrid confirmation mode intelligently adapts to execution context (agent vs interactive vs bypass)

🤖 Agent-Aware Operations: File operations now raise structured CONFIRMATION_REQUIRED errors that LLM agents can interpret and act on

Smart Defaults: skip_confirm=False safely handles both human interactions (prompts) and agent workflows (structured errors)

🔧 Test Coverage: Comprehensive test suite (27 tests) for confirmation system with 100% coverage

Previous Release (v0.13.1)

🔀 Module Migration: Code analysis, git tools, profiling, and static analysis modules (39 functions) migrated to coding-open-agent-tools

🎯 Refocused Scope: 151 foundational functions across 20 modules

📦 Sibling Package: For coding-specific tools, see coding-open-agent-tools

Installation

pip install basic-open-agent-tools

Or with UV:

uv add basic-open-agent-tools

Optional Dependencies

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

# Specific features
pip install basic-open-agent-tools[system]      # Process management, system info
pip install basic-open-agent-tools[pdf]         # PDF reading and creation
pip install basic-open-agent-tools[xml]         # XML parsing and validation
pip install basic-open-agent-tools[word]        # Word document operations
pip install basic-open-agent-tools[excel]       # Excel spreadsheet operations
pip install basic-open-agent-tools[powerpoint]  # PowerPoint presentations
pip install basic-open-agent-tools[image]       # Image processing

Quick Start

import basic_open_agent_tools as boat

# Load all tools
all_tools = boat.load_all_tools()  # 151 functions

# Or load specific categories
fs_tools = boat.load_all_filesystem_tools()
text_tools = boat.load_all_text_tools()
data_tools = boat.load_all_data_tools()

# Merge selected categories
custom_tools = boat.merge_tool_lists(fs_tools, text_tools, data_tools)

# Use with any agent framework
from google.adk.agents import Agent
agent = Agent(tools=all_tools)

Available Modules (20 total, 151 functions)

Core Operations

  • file_system (18 functions) - File and directory operations
  • text (10 functions) - Text processing and formatting
  • data (23 functions) - JSON, CSV, YAML, TOML, INI processing
  • datetime (40 functions) - Date/time operations and calculations

Document Processing

  • pdf (8 functions) - PDF reading, creation, manipulation
  • word - Word document operations
  • excel - Excel spreadsheet operations
  • powerpoint - PowerPoint presentations
  • markdown - Markdown processing
  • html - HTML processing
  • xml - XML parsing and validation

System & Network

  • system (19 functions) - Shell commands, process management, system info
  • network (4 functions) - HTTP client, DNS, port checking
  • utilities (8 functions) - Debugging, timing, code validation

Security & Data

  • crypto (14 functions) - Hashing, encoding, random generation
  • archive (9 functions) - ZIP, TAR, GZIP, BZIP2, XZ compression

Utilities

  • logging (5 functions) - Structured logging and rotation
  • todo - Task management
  • diagrams - Diagram generation
  • image - Image processing

Key Features

Agent-Friendly: Simplified type signatures prevent "signature too complex" errors

🚀 Minimal Dependencies: Pure Python core with optional dependencies only when needed

🔧 Modular: Load only what you need

🤝 Multi-Framework: Works with Google ADK (signature-based), LangChain, Strands Agents (@strands_tool decorator), custom frameworks

🔍 Enhanced Feedback: Detailed operation confirmations with skip_confirm safety parameter

Safety Features

Smart Confirmation System (3 Modes)

All write/delete operations include a skip_confirm parameter with intelligent confirmation handling:

🔄 Bypass Mode - skip_confirm=True or BYPASS_TOOL_CONSENT=true env var

  • Proceeds immediately without prompts
  • Perfect for CI/CD and automation

💬 Interactive Mode - Terminal with skip_confirm=False

  • Prompts user with y/n confirmation
  • Shows preview info (file sizes, etc.)

🤖 Agent Mode - Non-TTY with skip_confirm=False

  • Raises CONFIRMATION_REQUIRED error with instructions
  • LLM agents can ask user and retry with skip_confirm=True
# Safe by default - adapts to context
result = boat.file_system.write_file_from_string(
    file_path="/tmp/example.txt",
    content="Hello, World!",
    skip_confirm=False  # Interactive prompt OR agent error
)

# Explicit overwrite
result = boat.file_system.write_file_from_string(
    file_path="/tmp/example.txt",
    content="Updated content",
    skip_confirm=True  # Bypasses all confirmations
)

# Automation mode
import os
os.environ['BYPASS_TOOL_CONSENT'] = 'true'
# All confirmations bypassed for CI/CD

Documentation

Helper Functions

import basic_open_agent_tools as boat

# Category loaders
boat.load_all_filesystem_tools()
boat.load_all_text_tools()
boat.load_all_data_tools()
boat.load_all_datetime_tools()
boat.load_all_network_tools()
boat.load_all_utilities_tools()
boat.load_all_system_tools()
boat.load_all_crypto_tools()
boat.load_all_pdf_tools()
boat.load_all_archive_tools()
boat.load_all_logging_tools()
boat.load_all_diagrams_tools()
boat.load_all_excel_tools()
boat.load_all_html_tools()
boat.load_all_image_tools()
boat.load_all_markdown_tools()
boat.load_all_powerpoint_tools()
boat.load_all_todo_tools()
boat.load_all_word_tools()
boat.load_all_xml_tools()

# Specialized data loaders
boat.load_data_config_tools()  # YAML, TOML, INI
boat.load_data_csv_tools()     # CSV operations
boat.load_data_json_tools()    # JSON operations
boat.load_data_validation_tools()  # Data validation

# Utility functions
boat.merge_tool_lists(*tool_lists)  # Merge and deduplicate
boat.list_all_available_tools()     # List all tool names
boat.get_tool_info(tool_name)       # Get tool metadata

Contributing

We welcome contributions! See our Contributing Guide for development setup, coding standards, and pull request process.

License

MIT License - see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

basic_open_agent_tools-0.13.7.tar.gz (137.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

basic_open_agent_tools-0.13.7-py3-none-any.whl (175.1 kB view details)

Uploaded Python 3

File details

Details for the file basic_open_agent_tools-0.13.7.tar.gz.

File metadata

  • Download URL: basic_open_agent_tools-0.13.7.tar.gz
  • Upload date:
  • Size: 137.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for basic_open_agent_tools-0.13.7.tar.gz
Algorithm Hash digest
SHA256 144323da61b995da595e382bb237290b9317987021da86426017763f1a651c19
MD5 4a1073776d3bdc194812e4cdc336b731
BLAKE2b-256 fde9e6afe0c9888d2be8bdf282e1c73b35136683b702aaca944ee8378591f59e

See more details on using hashes here.

Provenance

The following attestation bundles were made for basic_open_agent_tools-0.13.7.tar.gz:

Publisher: publish.yml on Open-Agent-Tools/basic-open-agent-tools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file basic_open_agent_tools-0.13.7-py3-none-any.whl.

File metadata

File hashes

Hashes for basic_open_agent_tools-0.13.7-py3-none-any.whl
Algorithm Hash digest
SHA256 f53b22955426d6a34668b788604dd3affcad96a24beea442511e5926251f8cff
MD5 1d64812636855bfaec8d98f03239df99
BLAKE2b-256 241d482bcb8524b865ffae54060f69e058d05bfc07e2530a570bf4b8ecb7bdd1

See more details on using hashes here.

Provenance

The following attestation bundles were made for basic_open_agent_tools-0.13.7-py3-none-any.whl:

Publisher: publish.yml on Open-Agent-Tools/basic-open-agent-tools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page