OnPrem.LLM AgentExecutor: Запускайте изолированные ИИ-агенты со встроенными инструментами

AgentExecutor от OnPrem.LLM позволяет автономным ИИ-агентам выполнять сложные задачи, используя как облачные, так и локальные модели. Конвейер работает с любой моделью, поддерживаемой LiteLLM и способной вызывать инструменты, включая облачные модели, такие как GPT-5.2-Codex от OpenAI, Claude Sonnet 4.5 от Anthropic и Gemini 1.5 Pro от Google, а также локальные модели через Ollama, vLLM или llama.cpp.
Встроенные инструменты
По умолчанию AgentExecutor предоставляет доступ к девяти встроенным инструментам:
read_file— Чтение полного содержимого файлаread_lines— Чтение определённых диапазонов строк из файловedit_file— Редактирование файлов через поиск/заменуwrite_file— Запись полного содержимого файлаgrep— Поиск шаблонов в файлахfind— Поиск файлов по шаблону globrun_shell— Выполнение команд оболочкиweb_search— Поиск информации в интернетеweb_fetch— Получение и чтение содержимого с URL-адресов
Примеры конфигурации
Вы можете настроить доступ к инструментам в соответствии с вашими требованиями безопасности:
# Использовать значения по умолчанию (все инструменты, включая оболочку):
executor = AgentExecutor(model='anthropic/claude-sonnet-4-5')
Значения по умолчанию, но без доступа к оболочке (безопаснее):
executor = AgentExecutor(
model='openai/gpt-5-mini',
disable_shell=True
)
Минимальные инструменты:
executor = AgentExecutor(
model='openai/gpt-5-mini',
enabled_tools=['read_file', 'write_file']
)
Только веб-исследование:
executor = AgentExecutor(
model='openai/gpt-5-mini',
enabled_tools=['web_search', 'web_fetch']
)
Изолированное выполнение
Для безопасности вы можете запускать агентов во временных контейнерах, используя sandbox=True. Это важно, потому что агенты с доступом к оболочке потенциально могут читать или изменять файлы за пределами рабочего каталога. Агент работает в указанном рабочем каталоге и не может читать или записывать за его пределами, если ему не предоставлен доступ к оболочке.
Базовый пример с изоляцией:
executor = AgentExecutor(
model='anthropic/claude-sonnet-4-5',
sandbox=True,
)
result = executor.run(
task="""
Создайте простой модуль калькулятора на Python со следующим:
- calculator.py с функциями add, subtract, multiply, divide
- test_calculator.py с тестами pytest
- Все тесты должны проходить
""",
working_dir='./calculator_project'
)
Этот подход полезен для разработчиков, которым необходимо автоматизировать задачи программирования, сохраняя при этом границы безопасности. Для работы инструмента требуется установить PatchPal с помощью pip install patchpal.
📖 Read the full source: HN AI Agents
👀 Смотрите также

Режим планирования кода Claude снижает процент переделок с 40% до почти нуля.
Разработчик отследил более 30 сессий кодирования с Claude Code и обнаружил, что пропуск режима планирования приводит к переделке задач с нуля в 40% случаев. С использованием режима планирования процент переделок упал практически до нуля, при этом одна функция заняла всего 17 минут против 35+ минут без планирования.

GLM-5-Turbo демонстрирует низкий уровень ошибок при вызове инструментов в пользовательском тестировании.
Модель z-ai/glm-5-turbo демонстрирует среднюю частоту ошибок при вызове инструментов в 0,57% в тестах, что значительно ниже показателя GLM-5 в ~3%. Пользователь сообщил об успешном использовании модели с CLI-инструментом для написания фэнтези-романа объёмом 97 000 слов с минимальными проблемами.

context-link v1.0.0: Локальный MCP-сервер сокращает использование токенов в Claude Code на 91%
context-link v1.0.0 — это локальный MCP-сервер, который индексирует код с помощью Tree-sitter, предоставляя Claude только необходимые символы, зависимости и структуру, сокращая использование токенов на 91% в отдельных случаях и на 70–80% при выполнении полных задач.

Запуск NemoClaw с локальным vLLM: Заметки по настройке и наблюдения по разработке агентов
Разработчик задокументировал запуск платформы изолированных AI-агентов NVIDIA NemoClaw с локальной моделью Nemotron 9B v2 через vLLM на WSL2. Ключевые выводы включают детали маршрутизации вывода, проблемы совместимости парсеров и наблюдения о разрыве в разработке агентов.