-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Description
Required prerequisites
- I have searched the Issue Tracker and Discussions that this hasn't already been reported. (+1 or comment there if it has.)
- Consider asking first in a Discussion.
Motivation
Anthropic's Skills repository (https://github.com/anthropics/skills) proposes a modular capability expansion solution for Agents. Its core design philosophy can be summarized as "Tool-Oriented Encapsulation for Efficient Context Management", which naturally aligns with the In-Memory Memory Mechanism and Tool Calling Requirement of the Camel framework. Could the Camel consider if explore the upgrade approach for Camel's tool calling module with the similar Plug-in Architecture?
Benifit:
- Token Efficiency Improvement: Reduce the transmission of redundant information in tool calls through progressive loading and script reuse.
- Enhanced Tool Extensibility: The standardized Skill format facilitates community contributions and the management of large-scale tool libraries.
- Optimized Task Adaptability: Agents can dynamically select the loading granularity of tool resources based on task complexity, balancing efficiency and accuracy.
- Accelerated Engineering Implementation: Clear tool encapsulation specifications reduce cross-team collaboration costs and facilitate large-scale deployment and iteration.
Solution
1. Introduce the "Skill-Based Tool Registration Mechanism"
Encapsulate existing tools into standardized "Skill Units". Each tool includes the following components:
-
Metadata: Name, description, and trigger conditions, which are used for rapid matching of user needs.
-
Core Logic: Calling flow, parameter validation, and error handling.
-
Auxiliary Resources: Such as API documents (stored in references/) and common scripts (stored in scripts/).
Advantage: It enables rapid tool filtering through metadata, preventing irrelevant tool information from entering the context and reducing token consumption.
2. Implement the Progressive Context Loading Logic
-
Utilize Camel's in-memory mechanism to cache tool metadata, loading the core logic only when the tool is triggered.
-
For complex tools (e.g., multi-step workflows), store detailed process documents in the references/ directory, allowing the Agent to dynamically read them as needed.
3. Reuse the Memory Mechanism for Skill Iteration and Caching
-
Store the calling history and optimization records of frequently used tools in Camel's memory, and dynamically update the tool logic (e.g., adjust parameter validation rules based on failure cases).
-
Solidify frequently used scripts (e.g., data format conversion) in the scripts/ directory to avoid repeated code generation and save tokens.
Alternatives
No response
Additional context
No response