strands-agents/tools
A set of tools that gives agents powerful capabilities.
Strands Agents Tools
功能簡介 – 一個 Python 套件,封裝了大量可供 LLM 驅動型代理呼叫的即插即用工具(函式)。這些工具涵蓋了從簡單的檔案 I/O 到網路搜尋、AWS 服務呼叫、圖像/影片生成、桌面自動化以及多代理編排等各個方面。它們旨在插入到 Strands Agents SDK 中,以便語言模型只需一行程式碼即可呼叫它們。
核心能力
| 類別 | 範例工具 | 典型用例 |
|---|---|---|
| 檔案與編輯器 | file_read, file_write, editor (已棄用) |
載入設定檔、寫入結果、帶有語法高亮的編輯程式碼片段 |
| Shell 與作業系統 | shell (已棄用), environment (已棄用) |
執行系統指令、查詢環境變數 (在 Windows 上請謹慎使用) |
| 網路與搜尋 | tavily_search, tavily_extract, exa_search, exa_get_contents |
即時網路搜尋、內容提取、網站爬取 |
| HTTP / API | http_request |
呼叫任何支援身分驗證的 REST 端點 |
| 訊息傳遞 | slack (已棄用) |
在 Slack 工作區中發布或讀取訊息 |
| Python 執行 | python_repl, code_interpreter |
執行任意 Python(或透過沙盒解釋器執行 JS/TS)並保持狀態持久化 |
| 數學與推理 | calculator (已棄用), think (已棄用) |
符號計算、多步推理 (現在由 SDK 原生處理) |
| AWS 整合 | use_aws, nova_reels, agent_core_memory |
與 S3、Bedrock 及其他 AWS 服務互動 |
| 媒體生成 | generate_image, generate_image_stability, search_video, chat_video |
建立圖像、搜尋和分析影片 |
| 記憶體後端 | mem0_memory, mongodb_memory, elasticsearch_memory |
在多次執行之間儲存和檢索使用者/代理記憶體 |
| 瀏覽器自動化 | browser (Chromium) |
抓取頁面、填寫表單、執行 UI 測試 |
| 桌面自動化 | use_computer |
移動滑鼠、點擊、打字、截圖 |
| 多代理編排 | swarm, agent_graph, graph, use_agent, use_llm |
並行執行多個代理、建構確定性的 DAG 流水線、透過模型切換實現代理嵌套 |
| 排程與控制 | cron (已棄用), sleep (已棄用), stop, handoff_to_user |
安排定期任務、暫停執行、優雅停止、請求使用者確認 |
| 其他 | journal, rss (已棄用), bright_data, speak |
結構化日誌、RSS 饋送處理、網路爬蟲服務、文字轉語音 |
安裝
# 基礎安裝 (僅核心工具)
pip install strands-agents-tools
# 安裝所需的擴充功能,例如記憶體後端、瀏覽器、RSS、電腦自動化
pip install "strands-agents-tools[mem0_memory,use_browser,rss,use_computer]"
開發時,請複製儲存庫,建立虛擬環境,並執行 pip install -e ".[dev]"。
使用方法 – README 展示了典型模式:
from strands_tools import A2AClientToolProvider, Agent
provider = A2AClientToolProvider(known_agent_urls=["http://localhost:9000"])
agent = Agent(tools=provider.tools)
# 直接在代理上呼叫工具
result = agent.tool.file_read(path="config.yaml")
每個工具都作為 agent.tool 上的一個方法公開。參數作為關鍵字參數傳遞,回傳值是底層操作產生的結果(例如檔案內容、JSON 回應、圖像位元組等)。
安全提示 – 許多工具會執行程式碼、操作檔案系統或呼叫外部服務。本套件將此類工具標記為實驗性,並為舊的封裝器添加了棄用警告。生產環境部署應進行獨立的安全性審查,並遵循專案的負責任 AI 指南。
路線圖 / 狀態 – 該儲存庫由社群驅動並積極維護(參見提交活動徽章)。若干工具已棄用,以轉而使用原生 SDK 功能;維護者計劃在大部分功能直接整合到 Strands SDK 後,最終歸檔該儲存庫。
摘要 (TL;DR) – Strands Agents Tools 是一個 Python 工具箱,讓 LLM 驅動的代理只需幾行程式碼即可執行現實世界的動作(檔案 I/O、網路搜尋、AWS 呼叫、桌面自動化、多代理流水線等)。透過 pip 安裝,將工具插入 Strands Agent 並將其作為方法呼叫。請注意安全影響以及舊封裝器的持續棄用情況。
相關
- Dispatch
- 專案
- 專案
- 專案
- 專案