Skip to content

Feat/refactor tools system#846

Closed
lxowalle wants to merge 3 commits intosipeed:mainfrom
lxowalle:feat/refactor-tools-system
Closed

Feat/refactor tools system#846
lxowalle wants to merge 3 commits intosipeed:mainfrom
lxowalle:feat/refactor-tools-system

Conversation

@lxowalle
Copy link
Collaborator

📝 Description

📝 Objective

Optimize the tools module to make developing and using tools more convenient.

📋 To-Do List

  • Organize the project structure of the tools module, with each tool implemented in a separate file to ensure a clear structure. For instance, the current edit.go implements both the append_file and edit_file tools.
  • Decouple the tools module. For example:Initializing tools will requires modifying the agent's code.
  • Implement constraints for the tool interface. Currently, tools do not explicitly require users to implement methods like Name() and Description().
  • Add configuration to enable/disable tools, disable some infrequently used tools by default
  • Support a plugin system to enable hot-loading of tools (this feature may be implemented in another issue).feat(hooks/plugin): add lifecycle hooks + phase-1 plugin contract #473

🔗 Related Issues / PRs

🗣️ Type of Change

  • 🐞 Bug fix (non-breaking change which fixes an issue)
  • ✨ New feature (non-breaking change which adds functionality)
  • 📖 Documentation update
  • ⚡ Code refactoring (no functional changes, no api changes)

🤖 AI Code Generation

  • 🤖 Fully AI-generated (100% AI, 0% Human)
  • 🛠️ Mostly AI-generated (AI draft, Human verified/modified)
  • 👨‍💻 Mostly Human-written (Human lead, AI assisted or none)

🔗 Related Issue

📚 Technical Context (Skip for Docs)

  • Reference URL:
  • Reasoning:

🧪 Test Environment

  • Hardware:
  • OS:
  • Model/Provider:
  • Channels:

📸 Evidence (Optional)

Click to view Logs/Screenshots

☑️ Checklist

  • My code/docs follow the style of this project.
  • I have performed a self-review of my own changes.
  • I have updated the documentation accordingly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

domain: tool type: enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant