danielmiessler/fabric

Fabric — это фреймворк с открытым исходным кодом для расширения возможностей человека с помощью ИИ, предоставляющий модульную систему для решения конкретных задач с использованием краудсорсинговых промптов, которые можно применять где угодно.

Инструменты⭐ 44 289Goпоследний релиз: v1.4.523
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

Fabric — это open-source фреймворк для интеграции AI в повседневные задачи, предоставляющий модульную систему управления промптами.

Зачем нужен

Инструмент решает проблему интеграции AI в рабочие процессы, позволяя централизованно хранить, организовывать и использовать готовые промпты для конкретных задач. Он полезен тем, кто хочет использовать AI не через веб-интерфейсы, а через CLI или REST API, обеспечивая гибкость и кроссплатформенность.

Что можно реализовать

  • Автоматизация рутинных задач с помощью готовых шаблонов промптов
  • Использование AI через командную строку (CLI) для разработчиков
  • Интеграция AI в существующие инструменты через REST API
  • Кастомизация промптов под специфические бизнес-задачи
  • Работа с различными LLM-бэкендами (OpenAI, Anthropic, Azure и др.) через единую систему

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

  • Поддержка множества LLM-провайдеров (OpenAI, Anthropic, Azure, Digital Ocean и др.)
  • Возможность использования как CLI-интерфейса, так и REST API сервера
  • Система управления промптами (patterns), позволяющая создавать и организовывать свои решения
  • Активная разработка и регулярные обновления (поддержка новых моделей, таких как Claude Opus 4.7)
  • Полная поддержка интернационализации (i18n) на 10 языках

👤 Кому подойдёт: разработчики, технические специалисты, пользователи, предпочитающие CLI, и организации, нуждающиеся в кастомизации AI-интеграций

Релизы

v1.4.523patch
🕐 11 ч назад · релиз на GitHub ↗

Исправлено автоматическое обновление каталогов моделей после смены вендоров и упрощена логика инвалидации кэша.

  • Fixed: Каталоги моделей теперь автоматически обновляются сразу после изменений в составе вендоров.
  • Fixed: Упрощена инвалидация кэча в AddVendors: код сокращен с 463 до 25 строк за счет использования блокировки modelsMu.
  • Fixed: Функция GetModels переписана в лаконичный формат с блокировкой и чтением, убраны циклы повторов и защитные копии.
  • Deprecated: Удалены устаревшие механизмы отслеживания версий, загрузки и обнаружения моделей, а также функция vendorsSnapshot().
  • Fixed: Синхронизация каталога моделей приведена в соответствие с main с сохранением поведения инвалидации по поколениям.
v1.4.522patch
🕐 16 ч назад · релиз на GitHub ↗

Исправлена обработка блоков рассуждений в интеграции с AWS Bedrock.

  • Fixed: Исправлена работа с AWS Bedrock: добавлена корректная обработка и пропуск блоков ответов с рассуждениями (reasoning).
v1.4.521patch
🕐 17 ч назад · релиз на GitHub ↗

Исправлено зависание интерактивного режима установки из-за некорректной обработки символов возврата каретки в терминалах.

  • Fixed: Устранено зависание интерактивной установки при вводе в терминалах, отправляющих возврат каретки вместо новой строки.
  • Added: Добавлена вспомогательная функция readLine для корректного чтения строк с разными разделителями и общим буфером.
  • Fixed: Упрощена обработка ввода плагинов за счёт удаления избыточной очистки ответов от символов новой строки.
  • Fixed: Удалено блокирующее взаимодействие (mutex) при инициализации общего стандартного ввода.
  • Fixed: Тесты на окончания строк объединены в единую таблицу, заменяющую разрозненные скрипты и тесты.
v1.4.520patch
🕐 19 ч назад · релиз на GitHub ↗

Исправлено определение временных меток для визуальных OCR-подсказок YouTube за счёт использования реального тайминга кадров ffmpeg.

  • Fixed: Временные метки визуальных OCR-подсказок YouTube теперь берутся из реального тайминга кадров ffmpeg, а не из индекса результата OCR.
  • Fixed: Диапазоны подсказок формируются на основе фактического времени кадров с использованием поля pts_time из вывода showinfo ffmpeg.
  • Added: Добавлены регрессионные тесты для парсера временных меток, вспомогательной функции диапазонов и конечного пути извлечения визуальных данных.
v1.4.519patch
🕐 вчера · релиз на GitHub ↗

Исправлены скрытые символы в шаблоне Nuclei и добавлена поддержка провайдера WebWright.

  • Fixed: Удалены скрытые символы (zero-width spaces и BOM) из шаблона write_nuclei_template_rule, восстановлено корректное отображение кода.
  • Added: Добавлена поддержка WebWright как провайдера, совместимого с OpenAI.
v1.4.518minor
🕐 5 дн назад · релиз на GitHub ↗

Добавлена поддержка провайдера onomeo как совместимого с OpenAI API.

  • Added: Добавлен провайдер onomeo, совместимый с OpenAI API, с базовым URL https://onomeo.com/v1.
  • Added: Провайдер onomeo зарегистрирован в ProviderMap.
  • Added: Добавлен тестовый кейс TestCreateClient для проверки работы с новым провайдером.
v1.4.517minor
🕐 6 дн назад · релиз на GitHub ↗

Добавлена локализация на арабский язык (Бахрейн и Саудовская Аравия), улучшена структура кода.

  • Added: Добавлен файл локализации для арабского языка с поддержкой опций и команд приложения.
  • Added: Расширен перевод на бахрейнский диалект арабского языка для CLI, процесса настройки и сообщений об ошибках.
  • Added: Добавлен перевод на саудовский диалект арабского языка, соответствующий охвату бахрейнской локали.
  • Fixed: Удалены общие арабские переводы в пользу стратегии регионального резервирования с тестами разрешения кандидатов локали.
  • Added: Рефакторинг структуры кода для повышения читаемости и удобства поддержки.
v1.4.516majorbreaking
🕐 9 дн назад · релиз на GitHub ↗

Критическое обновление безопасности: жесткие ограничения для серверов, плагинов и шаблонов, множество ломающих изменений.

  • Breaking: Сервер теперь требует заголовок Content-Type: application/json для JSON-эндпоинтов и Ollama-совместимого /api/chat.
  • Breaking: Шаблонизатор больше не раскрывает переменные рекурсивно: значение x='{{name}}' при подстановке {{x}} вернет строку '{{name}}'.
  • Breaking: Плагины file и fetch, а также загрузчик изображений Ollama работают только с публичными адресами, игнорируя HTTP_PROXY.
  • Breaking: В паттернах для REST-эндпоинтов доступны только плагины text и datetime; использование sys, file, fetch или расширений вызовет ошибку.
  • Fixed: Значительно улучшена безопасность: добавлена защита от SSRF, ограничены права доступа к файлам, внедрена санитизация HTML и CSP.
v1.4.515minor
🕐 10 дн назад · релиз на GitHub ↗

Добавлена поддержка провайдера Opper как совместимого с OpenAI, обновлена документация и тесты.

  • Added: Добавлен провайдер Opper, совместимый с OpenAI, с базовым URL https://api.opper.ai/v3/compat.
  • Added: Opper добавлен в раздел совместимых с OpenAI провайдеров в файлах README.md и README.zh.md.
  • Added: Добавлен тестовый кейс TestCreateClient для проверки работы с новым провайдером.
v1.4.513minor
🕐 10 дн назад · релиз на GitHub ↗

Добавлен поиск по веб-страницам через Firecrawl с использованием флага --firecrawl_search.

  • Added: Реализован веб-поиск через Firecrawl, активируемый флагом --firecrawl_search.
v1.4.512minor
🕐 11 дн назад · релиз на GitHub ↗

В fabric v1.4.512 добавлена поддержка AI-провайдера DemonRoute по протоколу OpenAI.

  • Added: Добавлена поддержка DemonRoute как совместимого с OpenAI провайдера.
  • Added: Зарегистрирован базовый URL API для работы с DemonRoute.
  • Added: DemonRoute добавлен в список поддерживаемых провайдеров в README.
v1.4.511patch
🕐 11 дн назад · релиз на GitHub ↗

Исправлены критические уязвимости в API и добавлен паттерн матрицы Эйзенхауэра для приоритизации задач.

  • Fixed: Устранена уязвимость произвольной записи файлов и инъекции команд в API-режиме.
  • Fixed: Усилены проверки путей: добавлена защита от абсолютных путей, обхода директорий и зарезервированных имен Windows.
  • Added: Добавлен паттерн Eisenhower Matrix для сортировки задач и принятия решений.
  • Added: Новый паттерн зарегистрирован с тегами BUSINESS, SELF и STRATEGY, включает классификацию задач.
v1.4.509minor
🕐 12 дн назад · релиз на GitHub ↗

Добавлен поиск через Serply, обновлены паттерны Ultimate Law и расширен каталог китайских рабочих процессов.

  • Added: Добавлен плагин веб-поиска Serply с флагом --serply_search, использующий общий HTTP-клиент.
  • Added: Введен новый паттерн judge_ultimate_law для вывода этических вердиктов по фреймворку Ultimate Law.
  • Added: Обновлены паттерны ultimate_law_safety и audit_consent согласно текущей доктрине фреймворка.
  • Added: Расширен каталог предложений: добавлены китайские рабочие процессы и новые аналитические линзы.
v1.4.508minor
🕐 12 дн назад · релиз на GitHub ↗

Добавлена настраиваемая поддержка CORS для REST и Ollama серверов с усилением безопасности.

  • Added: Добавлена конфигурируемая поддержка CORS для REST и Ollama серверов через флаги и переменные окружения.
  • Added: Внедрено общее CORS-промежуточное ПО для обоих серверов с обработкой preflight-запросов до аутентификации.
  • Added: Усилены меры безопасности: обязательное требование API-ключей для wildcard-источников и исключение null-источников.
  • Fixed: Удалены хардкод-значения для origins чата и улучшена загрузка настроек сервера из .env с сохранением явных переопределений.
v1.4.507patch
🕐 13 дн назад · релиз на GitHub ↗

Улучшена обработка ошибок при выборе паттерна из имени бинарника и добавлены локализации подсказок.

  • Fixed: Добавлена понятная подсказка об ошибке, когда имя исполняемого файла используется как запасной вариант для паттерна.
  • Fixed: Внедрена вспомогательная функция patternFromBinaryName() для точного отслеживания происхождения имени паттерна.
  • Fixed: fabric-ai больше не выбирает паттерн автоматически на основе имени бинарника для исключенных исполняемых файлов.
  • Added: Добавлен ключ локализации pattern_from_binary_name_hint во все файлы переводов для единообразия интерфейса.
v1.4.506patch
🕐 13 дн назад · релиз на GitHub ↗

Исправлена работа yt-dlp: теперь пользовательские настройки субтитров корректно применяются без конфликтов с фильтрами.

  • Fixed: yt-dlp теперь корректно учитывает указанные пользователем языки субтитров, игнорируя встроенные фильтры.
  • Fixed: При повторных попытках загрузки сохраняются пользовательские аргументы без навязанных фильтров.
  • Added: Добавлены тесты для проверки поведения по умолчанию, пользовательских переопределений и пустых списков языков.
v1.4.505minor
🕐 15 дн назад · релиз на GitHub ↗

Добавлена поддержка Cheaper Inference как провайдера, совместимого с OpenAI.

  • Added: Добавлен провайдер Cheaper Inference, совместимый с OpenAI.
v1.4.504minor
🕐 15 дн назад · релиз на GitHub ↗

Добавлены провайдеры OpenCode Zen и Go с маршрутизацией сессий, упрощена генерация ID.

  • Added: Добавлены провайдеры OpenCode Zen и OpenCode Go с поддержкой маршрутизации сессий.
  • Fixed: Упрощена обработка ID сессий: заменена генерация UUID на crypto/rand.Text, зависимость удалена.
  • Added: Сохранены существующие ID сессий, приоритет отдан именованным сессиям.
  • Fixed: Стандартизировано значение User-Agent для обоих провайдеров OpenCode на 'fabric'.
  • Deprecated: Удалены утилиты определения версии и связанные с ними тесты.
v1.4.500minor
🕐 15 дн назад · релиз на GitHub ↗

Добавлена поддержка Eden AI как провайдера, совместимого с OpenAI.

  • Added: Добавлен Eden AI в качестве провайдера, совместимого с OpenAI.
v1.4.497minor
🕐 15 дн назад · релиз на GitHub ↗

Добавлена поддержка локальных моделей Apple Foundation Models на macOS с отключенным стримингом.

  • Added: Добавлена поддержка локального провайдера Apple Foundation Models.
  • Added: Ключи API теперь опциональны при настройке провайдера.
  • Added: Для запросов чата явно отключен стриминг.
  • Added: Добавлена документация по требованиям macOS и запуску локального сервера.
v1.4.495minor
🕐 15 дн назад · релиз на GitHub ↗

Добавлена поддержка провайдера llmman для локальных моделей в формате OCI через OpenAI-совместимый API.

  • Added: Добавлен провайдер llmman, позволяющий запускать локальные модели в формате OCI через API, совместимый с OpenAI.
  • Added: Интеграция реализована через единую запись ProviderMap с использованием localhost BaseURL, следуя подходу LiteLLM.
  • Added: API llmman доступен на порту 17434 и не требует специальной обработки конфигурации.
  • Added: Расширена таблица TestCreateClient новым кейсом для тестирования провайдера llmman.
v1.4.494patch
🕐 16 дн назад · релиз на GitHub ↗

Исправлено управление контекстом в Ollama: отмены запросов теперь корректно обрабатываются, утечки ресурсов устранены.

  • Fixed: SendStream и ListModels в Ollama теперь корректно учитывают контекст вызывающего, что позволяет правильно передавать отмены запросов.
  • Fixed: Устранена утечка ресурсов: отключение веб-клиентов больше не оставляет фоновые генерации в SSE-сервере, экономя вычислительные мощности.
  • Added: Добавлены регрессионные тесты с использованием httptest для проверки корректного завершения потоков при отмене контекста.
  • Fixed: Упрощена структура тестов отмены потоков: заменены ручные проверки ошибок на require.ErrorIs, убраны явные таймауты.
v1.4.492patch
🕐 17 дн назад · релиз на GitHub ↗

Исправлена передача аргументов yt-dlp в REST API для запросов транскриптов YouTube.

  • Fixed: Исправлен REST API: теперь конфигурационные аргументы yt-dlp корректно применяются к запросам транскриптов.
  • Fixed: Аргументы плагина и конфигурация теперь передаются в YouTube-плагин для обеих форматов транскриптов (обычного и с таймкодами).
  • Added: Добавлены серверные тесты для проверки корректности передачи аргументов yt-dlp.
  • Added: Обновлена документация: добавлена поддержка конфигурации для конечной точки REST транскриптов.
v1.4.486minor
🕐 19 дн назад · релиз на GitHub ↗

Добавлена поддержка китайских AI-провайдеров (Aliyun, Zhipu, ByteDance), улучшен i18n и добавлены 5 новых паттернов.

  • Added: Добавлена поддержка китайских AI-провайдеров: Aliyun DashScope, Zhipu AI и ByteDance Ark.
  • Added: Введены пять новых паттернов на китайском языке: анализ статей, проверка контрактов, поэзии, перевод новостей и ревью кода.
  • Fixed: Улучшено качество локализации (i18n) и унифицирована терминология провайдеров.
  • Added: Добавлено тестовое покрытие для всех трёх новых китайских провайдеров.
v1.4.484minor
🕐 19 дн назад · релиз на GitHub ↗

Добавлен флаг --workflow для цепочки паттернов из YAML/JSON с валидацией и автодополнением.

  • Added: Появился флаг --workflow для последовательного выполнения паттернов из YAML или JSON файлов.
  • Added: Реализована предварительная валидация: проверка на пустые шаги, дубликаты и неизвестные паттерны до вызова LLM.
  • Added: Добавлены переопределения параметров (input, model, vendor, variables) для каждого шага.
  • Added: Сообщения о прогрессе и ошибках выводятся в stderr с префиксом [step N/TOTAL pattern], сохраняя stdout чистым.
  • Added: Добавлено автодополнение для --workflow в Bash, Zsh и Fish с подсказками путей к файлам.
v1.4.483patch
🕐 20 дн назад · релиз на GitHub ↗

Исправлена обработка ошибок аутентификации Codex (401) и удалён неиспользуемый код из реестра расширений.

  • Fixed: Детали ошибок провайдора Codex теперь отображаются при ответах 401, дополняя локализованное сообщение об ошибке входа.
  • Fixed: Сохранена возможность инспекции базовых ошибок аутентификации через распаковку (unwrapping).
  • Added: Добавлены регрессионные тесты для сообщений провайдеров Codex при ошибках 401.
  • Deprecated: Удалён неиспользуемый метод calculateFileHash из реестра расширений и связанные импорты.
  • Deprecated: Удалены неиспользуемые методы Verify и ListExtensions из реестра расширений.
v1.4.482patch
🕐 20 дн назад · релиз на GitHub ↗

Рефакторинг сборки промптов для Ollama, централизация обработки ошибок и добавление тестов.

  • Fixed: Унифицирована сборка сообщений в промптах Ollama через strings.Builder.
  • Fixed: Централизована обработка ошибок с сохранением потоковой и JSON-вывода.
  • Added: Добавлены тесты на ошибки потоковой передачи и передачу нескольких сообщений.
v1.4.481minor
🕐 21 дн назад · релиз на GitHub ↗

Добавлен провайдер Claude Code для локального CLI с поддержкой потоковой передачи, изображений и модели Opus 5.5.

  • Added: Добавлен провайдер Claude Code для локального CLI с аутентификацией через существующую подписку.
  • Added: Реализована поддержка потоковой передачи ответов, выбора моделей и настройки усилий на размышление.
  • Added: Добавлена обработка локальных изображений и base64-вложений через временные файлы.
  • Added: Добавлена модель Claude Opus 5.5 с поддержкой расширенного контекста.
  • Fixed: Очищены переменные окружения Anthropic для сохранения биллинга на основе подписки.
v1.4.480majorbreaking
🕐 22 дн назад · релиз на GitHub ↗

Удалена интеграция с GitHub Models, включая провайдер, документацию и тесты.

  • Breaking: Полностью удалена интеграция с GitHub Models из реестра совместимых провайдеров.
  • Breaking: Удалены заголовки версий GitHub API из запросов обнаружения моделей.
  • Deprecated: Удалена документация по настройке GitHub Models и ссылки на Copilot.
  • Fixed: Заменены фикстуры кэша GitHub на общие тестовые провайдеры и удалена проверка заголовков.
  • Fixed: Удалены упоминания GitHub Models из английской и китайской версий README.
v1.4.479minor
🕐 24 дн назад · релиз на GitHub ↗

Добавлена поддержка Y-API как провайдера, совместимого с OpenAI.

  • Added: Добавлен Y-API как провайдер, совместимый с OpenAI.