Skip to content

[Feature Request] pre- research about the design of agent skills interface in camel side #3445

@xunavy

Description

@xunavy

Required prerequisites

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

Sub-issues

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions