Bowen Liang 228de1f12a fix: miss usage of os.path.join for URL assembly and add tests on yarl (#4224) 11 місяців тому
..
docs ce58f0607b Feat/tool secret parameter (#2760) 1 рік тому
entities 7753ba2d37 FEAT: NEW WORKFLOW ENGINE (#3160) 1 рік тому
model 063191889d chore: apply ruff's pyupgrade linter rules to modernize Python code with targeted version (#2419) 1 рік тому
model_tools 40c646cf7a Feat/model as tool (#2744) 1 рік тому
prompt cea107b165 Refactor/react agent (#3355) 1 рік тому
provider 228de1f12a fix: miss usage of os.path.join for URL assembly and add tests on yarl (#4224) 11 місяців тому
tool b5f101bdac fix: transform None into correct dest type (#4077) 1 рік тому
utils 2a8881d0e8 fix: tool webscraper - too many redirects in case target url does not… (#3831) 1 рік тому
README.md 86286e1ac8 Feat/assistant app (#2086) 1 рік тому
README_CN.md 86286e1ac8 Feat/assistant app (#2086) 1 рік тому
errors.py 7753ba2d37 FEAT: NEW WORKFLOW ENGINE (#3160) 1 рік тому
tool_engine.py 25dea232d6 fix/dataset-retriever-tool-parameter-redundancy (#3418) 1 рік тому
tool_file_manager.py 7753ba2d37 FEAT: NEW WORKFLOW ENGINE (#3160) 1 рік тому
tool_manager.py 3480f1c59e refactor: tool parameter cache (#3703) 1 рік тому

README.md

Tools

This module implements built-in tools used in Agent Assistants and Workflows within Dify. You could define and display your own tools in this module, without modifying the frontend logic. This decoupling allows for easier horizontal scaling of Dify's capabilities.

Feature Introduction

The tools provided for Agents and Workflows are currently divided into two categories:

  • Built-in Tools are internally implemented within our product and are hardcoded for use in Agents and Workflows.
  • Api-Based Tools leverage third-party APIs for implementation. You don't need to code to integrate these -- simply provide interface definitions in formats like OpenAPI , Swagger, or the OpenAI-plugin on the front-end.

Built-in Tool Providers

Alt text

API Tool Providers

Alt text

Tool Integration

To enable developers to build flexible and powerful tools, we provide two guides:

Quick Integration 👈🏻

Quick integration aims at quickly getting you up to speed with tool integration by walking over an example Google Search tool.

Advanced Integration 👈🏻

Advanced integration will offer a deeper dive into the module interfaces, and explain how to implement more complex capabilities, such as generating images, combining multiple tools, and managing the flow of parameters, images, and files between different tools.