GitHunt
MA

malvavisc0/enhancedtoolkits

Enhanced Tools Kits for Agno AI Agents

Enhanced Toolkits for Agno AI Agents

License: MIT
Python 3.8+
Agno Framework

Production-ready AI agent tools for developers building agents with Agno and/or OpenAI-compatible tool calling.

This repository contains:

  • 9 core toolkits (search, reasoning, thinking, files, finance, weather, youtube, url downloading, orchestration/planning)
  • 9 calculator modules under enhancedtoolkits.calculators

Installation

Install from GitHub:

# Recommended: install all optional dependencies used by the exported toolkits
pip install "enhancedtoolkits[full] @ git+https://github.com/malvavisc0/enhancedtoolkits.git"

# Minimal install (only core dependencies)
pip install git+https://github.com/malvavisc0/enhancedtoolkits.git

# Focused extras
pip install "enhancedtoolkits[content] @ git+https://github.com/malvavisc0/enhancedtoolkits.git"   # markitdown (search + downloading)
pip install "enhancedtoolkits[youtube] @ git+https://github.com/malvavisc0/enhancedtoolkits.git"   # youtube-transcript-api
pip install "enhancedtoolkits[weather] @ git+https://github.com/malvavisc0/enhancedtoolkits.git"   # pywttr + models

Extras are defined in pyproject.toml.

Quick Start (Agno)

Core toolkits

from agno.agent import Agent
from enhancedtoolkits import (
    OrchestrationTools,
    ReasoningTools,
    SearxngTools,
    ThinkingTools,
    FilesTools,
    YFinanceTools,
    YouTubeTools,
    WeatherTools,
    DownloadingTools,
)

agent = Agent(
    name="AI Assistant",
    model="gpt-4",
    tools=[
        # Orchestration tools are auto-injected into every toolkit instance
        # (see OrchestrationTools), so adding it explicitly is optional.
        ReasoningTools(),
        SearxngTools(host="http://searxng:8080"),
        ThinkingTools(),
        FilesTools(base_dir="/app/workspace"),
        YFinanceTools(),
        YouTubeTools(),
        WeatherTools(),
        DownloadingTools(),
    ],
)

Calculator modules

from agno.agent import Agent
from enhancedtoolkits.calculators import (
    ArithmeticCalculatorTools,
    TimeValueCalculatorTools,
    InvestmentAnalysisCalculatorTools,
    LoanCalculatorTools,
)

agent = Agent(
    name="Finance Calculator",
    model="gpt-4",
    tools=[
        ArithmeticCalculatorTools(),
        TimeValueCalculatorTools(),
        InvestmentAnalysisCalculatorTools(),
        LoanCalculatorTools(),
    ],
)

Toolkit Overview (public tool/function names)

Orchestration / Planning

Class: OrchestrationTools

  • orchestrator_create_plan() / orchestrator_add_task()
  • orchestrator_update_task_status() / orchestrator_next_actions()
  • orchestrator_summarize_progress() / orchestrator_reset_plan()

Reasoning

Class: ReasoningTools

  • add_structured_reasoning_step()
  • add_meta_cognitive_reflection()
  • manage_working_memory_scratchpad()
  • assess_reasoning_quality_and_suggest_improvements()
  • synthesize_reasoning_chain_into_conclusion_or_insight()

Search (SearxNG)

Class: SearxngTools

  • perform_web_search() / perform_news_search() / perform_image_search() / perform_video_search()
  • perform_category_search()

Thinking

Class: ThinkingTools

  • build_step_by_step_reasoning_chain()
  • add_meta_cognitive_reflection()
  • manage_working_memory_scratchpad()
  • synthesize_reasoning_chain_into_output()

Files

Class: FilesTools

  • read_file_lines_chunk() / replace_file_lines_chunk() / insert_lines_into_file_chunk() / delete_lines_from_file_chunk()
  • save_file_with_validation()
  • retrieve_file_metadata() / list_files_with_pattern() / search_files_by_name_regex() / search_file_contents_by_regex()

Finance (Yahoo Finance)

Class: YFinanceTools

  • fetch_current_stock_price() / fetch_price_history()
  • fetch_company_information()
  • fetch_ticker_news()

YouTube

Class: YouTubeTools

  • fetch_youtube_video_metadata()
  • extract_youtube_video_id()
  • fetch_comprehensive_youtube_video_info()
  • fetch_youtube_video_transcript()

Weather

Class: WeatherTools

  • fetch_current_weather_conditions()
  • fetch_weather_forecast()
  • fetch_temperature_data()
  • fetch_weather_text_description()

URL Downloading

Class: DownloadingTools

  • get_file_from_url() / access_website_content()
  • download_multiple_urls()
  • get_url_metadata() / check_url_accessibility()

Why StrictToolkit

Enhanced Toolkits uses StrictToolkit as a base class to keep tool schemas predictable for agents.

In particular, it enforces strict parameter requirements in the generated JSON schema (OpenAI-compatible), which reduces failures from agents omitting parameters.

Documentation

License

MIT. See LICENSE.