Skip to content

Ruslik404/ToolWeaver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 ToolWeaver (C# AI Agent)

ToolWeaver — это расширяемый ИИ-агент на .NET, который не просто общается, но и взаимодействует с вашей операционной системой через набор инструментов (Tools).

Главная особенность проекта — способность к саморазвитию: агент может сам писать код новых инструментов и мгновенно интегрировать их в свой функционал.

✨ Ключевые возможности

  • 🛠 Tool Calling: Агент использует инструменты для работы с файлами, системными уведомлениями и командами.
  • 🧬 Self-Evolution: Инструмент CREATE_NEW_TOOL позволяет агенту создавать новые навыки на C# прямо во время диалога.
  • 🔍 Reflection-based Loading: Автоматическое обнаружение новых инструментов в папке Tools без ручной регистрации.
  • 📝 Dynamic Prompting: Система сама генерирует JSON-схемы инструментов для ИИ, обеспечивая высокую точность вызовов.
  • 🛡 Safety First: Механизм подтверждения (Confirmation) для опасных операций (запись файлов, запуск приложений).

🛠 Стек технологий

  • .NET 9 / C#
  • System.Text.Json (высокопроизводительная работа с данными)
  • OpenRouter API (доступ к топовым моделям: GPT-4, Claude 3.5, и др.)
  • Reflection API (динамическая архитектура)

🚀 Как это работает

  1. При старте программа сканирует папку Tools и находит все классы, реализующие интерфейс ITool.
  2. Формируется динамический системный промпт с JSON-описанием всех доступных функций.
  3. ИИ анализирует запрос пользователя и, если нужно, отправляет JSON-команду на вызов инструмента.
  4. Программа выполняет команду и возвращает результат ИИ для финального ответа.

📦 Установка и запуск

  1. Клонируйте репозиторий:
    git clone https://github.com/Ruslik404/ToolWeaver.git
  2. Создайте файл .env в корне проекта и добавьте ваш ключ:
    OPENROUTER_API_KEY=ваш_ключ
  3. Запустите проект:
    dotnet run

About

ToolWeaver — легковесный локальный AI-агент на .NET 8, связывающий ответы LLM с локальными функциями через строгие JSON-вызовы.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages