Skip to main content

A Tool Framework for AI Agents

Project description

Toolshop

A Tool Framework for AI Agents

Description

Toolshop is a general framework for developing tools used by LLM Agents. The library ships with a standard set of tools that can be used by agents that support tool-calling. Additionally, build your own custom tools by extending the Tool class. By developing your tools with Toolshop, your tools inherit several helpful features.

  • Configuration: Toolshop tools are classes, not functions. This enables users to configure their tools for a particular session before passing them to the agent.
  • Confirmations: Toolshop makes it easy to add required user confirmations to tool calls. Examples might include an agent editing sensitive files or provisioning cloud resources.
  • Constraints: Tools can share state. This allows users to enforce constraints that require more context than the tool call arguments alone. Examples might include prevention of multiple parallel edits to the same file, requiring file reads before file edits, and cost-based limits on tool usage.

Quick Start

Toolshop ships with a text-based assistant equipped with all of Toolshop's tools and designed for developer productivity.

To install and chat, run:

pip install toolshop
ts chat

Python Usage

from toolshop import all_tools
from marvin.beta import Application

app = Application(
    tools=all_tools()
)

app.say("Write mergesort.py")
app.say("Test mergesort.py")

Motivation

Toolshop seeks to provide a tool development platform for AI engineers. The motivation for this project is the belief that tool development is the best place for AI developers to invest their time. Conversely, time spent augmenting the reasoning and planning of existing assistant services is a risky area to invest as a 3rd party developer. This is simply because the reasoning and planning capabilities of agentic AI, offered "out of the box" by companies such as OpenAI and Anthropic, will continue to improve over time. Focusing development time on enhancing these capabilities is potentially risky, as improvements to the base assistant services themselves will quickly render this work obsolete.

The shift of companies like OpenAI and Anthropic away from simple text-completion models towards tool-enabled chat assistants abstracts more from the user, thereby increasing the surface area for AI R&D. We should expect these companies to continually improve their flagship assistant services, with enhancements in reasoning and planning being obvious avenues for development.

In contrast, tool development seems like a safe area for investment, and Toolshop provides a solid foundation for this purpose. An agent will always require a means to affect its environment or access information it was not trained on. The tool-calling paradigm has emerged as a simple and effective pattern to support these needs. Smarter models are able to use tools more correctly and efficiently, so investments in solid tools will pay dividends as models improve. Additionally, by enforcing guardrails in the tools rather than in the process, the planning and reasoning process native to the underlying agent remains unhindered.

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

toolshop-0.1.4.tar.gz (14.5 kB view details)

Uploaded Source

Built Distribution

toolshop-0.1.4-py3-none-any.whl (16.4 kB view details)

Uploaded Python 3

File details

Details for the file toolshop-0.1.4.tar.gz.

File metadata

  • Download URL: toolshop-0.1.4.tar.gz
  • Upload date:
  • Size: 14.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.8 Darwin/23.5.0

File hashes

Hashes for toolshop-0.1.4.tar.gz
Algorithm Hash digest
SHA256 ffe8ccbd38399545f33e7cb70933289ee82a09f8adb36ce1f39aa34a2a07a596
MD5 1bfdda0cf3ed0a6b8afac75f7961c6dc
BLAKE2b-256 1881a7a1744ec71603b266252341ebd437458521af8d8adc55df1e7aaebcf20e

See more details on using hashes here.

File details

Details for the file toolshop-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: toolshop-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 16.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.8 Darwin/23.5.0

File hashes

Hashes for toolshop-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 4d0d5f28f5fc95526b906b554e62b4f0e605a0d60ff94714918eefbbb2fb4a67
MD5 6bfaba2464830d0631dc9fc0c6506488
BLAKE2b-256 99bda426881bf3713b128786d20446f7aceaf51c7acdc32203d403fcd61e1c5b

See more details on using hashes here.

Supported by

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