Руководство по установке OpenFang

AI Expert

Уровень сложности: Начальный | Время: 15 минут | Результат: Освоение развертывания OpenFang и конфигурации моделей

Введение

Если вы ищете легковесный, но мощный фреймворк для AI-агентов, OpenFang заслуживает вашего внимания. Это операционная система для агентов (Agent Operating System) с открытым исходным кодом, написанная на Rust. Скомпилированная система занимает всего около 32 МБ, при этом она «из коробки» поддерживает более 20 ведущих провайдеров LLM, включая Anthropic Claude, Google Gemini, OpenAI GPT, DeepSeek, Groq и другие.

В отличие от традиционных фреймворков, OpenFang — это не просто обертка для чат-бота, а полноценная автономная система агентов, которая может работать по расписанию. Она помогает строить графы знаний, проводить мониторинг целей, генерировать лиды, управлять социальными сетями и автоматически выводить результаты на ваш Dashboard.

Сегодня мы разберем процесс ее установки.


Целевая аудитория

  • Разработчики с опытом 1–5 лет.
  • Технические специалисты, интересующиеся AI-агентами.
  • Энтузиасты, желающие быстро развернуть локальные AI-возможности.

Зависимости и окружение

Перед началом убедитесь, что ваша машина соответствует следующим требованиям:

  • Операционная система: Linux, macOS, Windows (WSL2 или PowerShell)
  • Rust: 1.75+ (рекомендуется использовать rustup для управления)
  • Оперативная память: минимум 4 ГБ RAM
  • Дисковое пространство: минимум 500 МБ свободного места

Установка Rust (если еще не установлен)

# Linux/macOS
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# Windows (через PowerShell)
irm https://sh.rustup.rs | iex

После установки выполните rustc --version для подтверждения версии.


Структура проекта

openfang/
├── agents/                 # Директория шаблонов агентов
│   ├── hello-world/
│   ├── coder/
│   ├── researcher/
│   └── ...
├── crates/                # Rust-крайты (14 шт.)
│   ├── openfang-cli/      # Интерфейс командной строки (CLI)
│   ├── openfang-runtime/  # Ядро среды выполнения
│   ├── openfang-api/      # REST API
│   └── ...
├── docs/                  # Официальная документация
├── sdk/                   # Многоязычные SDK
│   ├── python/
│   └── javascript/
└── config.toml.example    # Пример конфигурации

Быстрая установка

Способ 1: Официальная установка одной командой (рекомендуется)

Linux/macOS:

curl -fsSL https://openfang.sh/install | sh

Windows PowerShell:

irm https://openfang.sh/install.ps1 | iex

После завершения вы увидите следующее сообщение:

✅ OpenFang installed successfully!
Run 'openfang init' to get started.

Способ 2: Ручная компиляция

Если вы хотите собрать проект из исходного кода или находитесь в среде, не поддерживающей автоустановку:

# Клонирование репозитория
git clone https://github.com/RightNow-AI/openfang.git
cd openfang

# Сборка release-версии
cargo build --release

# Или сборка только CLI
cargo build --release -p openfang-cli

После компиляции исполняемый файл будет находиться в target/release/openfang (или target/release/openfang.exe).


Начальная конфигурация

Создание конфигурационного файла

Запустите команду инициализации:

openfang init

Это создаст папку конфигурации в вашем домашнем каталоге:

~/.openfang/
└── config.toml    # Основной файл конфигурации

Структура конфигурационного файла

Откройте ~/.openfang/config.toml. Базовая конфигурация выглядит так:

# Конфигурация API сервиса
host = "127.0.0.1"
port = 4200

# API ключ (опционально, рекомендуется для продакшена)
api_key = ""

# Конфигурация модели по умолчанию
[default_model]
provider = "groq"
model = "llama-3.3-70b-versatile"

# Настройки агентов по умолчанию
[agents.defaults]

[!TIP]
Все поля в конфигурационном файле являются необязательными, для пропущенных полей будут использованы значения по умолчанию.

Настройка API Key

OpenFang поддерживает настройку API Key через переменные окружения. Для первого знакомства рекомендуем использовать Groq (есть бесплатный лимит) или Defapi (половинная стоимость):

# Способ 1: Groq (бесплатно, есть лимиты скорости)
export GROQ_API_KEY="gsk_ваш_ключ_Groq"

# Способ 2: Defapi (наполовину дешевле, рекомендуется)
export DEFAPI_API_KEY="ваш_ключ_Defapi"

[!WARNING]
Не записывайте API Key напрямую в конфигурационный файл. Используйте переменные окружения.


Запуск сервиса

Запуск OpenFang

openfang start

Вы увидите вывод, похожий на этот:

🚀 Starting OpenFang daemon...
📡 Server listening on http://127.0.0.1:4200
🌐 Dashboard: http://127.0.0.1:4200
✅ OpenFang is ready!

Проверка сервиса

# Проверка состояния (Health check)
curl http://127.0.0.1:4200/api/health

# Просмотр доступных моделей
curl http://127.0.0.1:4200/api/models

# Просмотр статуса провайдеров
curl http://127.0.0.1:4200/api/providers

Доступ к Dashboard

Откройте браузер и перейдите по адресу http://127.0.0.1:4200 — вы увидите веб-панель управления OpenFang.


Ваш первый агент

Создание на основе встроенного шаблона

OpenFang предоставляет несколько встроенных шаблонов агентов в директории agents/:

# Список доступных шаблонов
openfang template list

Популярные шаблоны:

  • hello-world: Простейший агент для диалога.
  • coder: Помощник для написания кода.
  • researcher: Помощник для исследований.
  • assistant: Универсальный ассистент.

Создание агента

# Создание агента my-first-agent на основе шаблона hello-world
openfang agent create hello-world my-first-agent

Тестирование отправкой сообщения

# Отправка сообщения через CLI
openfang agent message my-first-agent "Hello, say hi in 3 words"

Или через REST API:

curl -X POST http://127.0.0.1:4200/api/agents/{agent-id}/message \
  -H "Content-Type: application/json" \
  -d '{"message": "Hello, say hi in 3 words"}'

Если вы получили адекватный ответ, значит, ваш агент работает!


Практика настройки моделей

Настройка Groq (бесплатный лимит)

Groq предоставляет бесплатный уровень с высокой скоростью, что идеально для разработки и тестирования:

# ~/.openfang/config.toml
[default_model]
provider = "groq"
model = "llama-3.3-70b-versatile"

Переменная окружения:

export GROQ_API_KEY="gsk_ваш_ключ"

[!TIP]
У бесплатного уровня Groq есть ограничения по количеству запросов (rate limits). Для продакшена лучше использовать других провайдеров.

Настройка Defapi (рекомендуется для экономии)

Если вы хотите использовать высококачественные модели по более выгодной цене, Defapi — отличный выбор. Цена составляет всего 50% от официальной:

  • Gemini 2.5 Pro: официально $1.25/M → Defapi всего $0.625/M
  • Claude Sonnet 4: официально $3.00/M → Defapi всего $1.50/M
# ~/.openfang/config.toml

# Добавление кастомного провайдера
[[providers]]
name = "defapi"
base_url = "https://api.defapi.org/v1"
api_key_env = "DEFAPI_API_KEY"

# Установка модели по умолчанию
[default_model]
provider = "defapi"
model = "claude-sonnet-4-20250514"

Переменная окружения:

export DEFAPI_API_KEY="ваш_ключ_Defapi"

[!TIP]
Defapi поддерживает протоколы v1/chat/completions, v1/messages, v1beta/models/* и идеально совместим с OpenFang.

Настройка Anthropic Claude

[default_model]
provider = "anthropic"
model = "claude-sonnet-4-20250514"
export ANTHROPIC_API_KEY="sk-ant-ваш_ключ"

Настройка Google Gemini

[default_model]
provider = "gemini"
model = "gemini-2.5-flash"
# Можно использовать переменные GEMINI_API_KEY или GOOGLE_API_KEY
export GEMINI_API_KEY="AIzaваш_ключ"

Настройка OpenAI

[default_model]
provider = "openai"
model = "gpt-4o-mini"
export OPENAI_API_KEY="sk-ваш_ключ"

Устранение типичных проблем

В1: API Key не работает

Шаги проверки:

  1. Убедитесь, что переменная окружения экспортирована правильно: echo $GROQ_API_KEY
  2. Перезапустите сервис OpenFang: openfang restart
  3. Проверьте статус провайдеров: curl http://127.0.0.1:4200/api/providers

В2: Модель отображается как недоступная

Возможные причины:

  • API Key не настроен или имеет неверный формат.
  • Данная модель отсутствует в списке поддерживаемых у провайдера.
  • Проблемы с сетевым соединением.

Решение:

# Просмотр детального списка моделей
curl http://127.0.0.1:4200/api/models | jq

# Тестирование подключения к конкретному провайдеру
curl -X POST http://127.0.0.1:4200/api/providers/groq/test

В3: Порт 4200 занят

# Найти процесс, занимающий порт
lsof -i :4200   # Linux/macOS
netstat -ano | findstr :4200  # Windows

# Изменить порт в конфигурационном файле
# ~/.openfang/config.toml
port = 4201

В4: Ошибка компиляции

Убедитесь, что версия Rust актуальна:

rustup update
rustc --version  # Должна быть >= 1.75

Если возникли проблемы с зависимостями, попробуйте:

cargo clean
cargo build --release

В5: Команда не найдена (Windows)

Убедитесь, что путь к исполняемому файлу OpenFang добавлен в PATH:

# Добавить путь в PATH (перманентно)
$env:PATH += ";$env:USERPROFILE\.openfang\bin"

# Или используйте полный путь
~\.openfang\bin\openfang.exe start

В6: Как посмотреть логи

# Просмотр логов в реальном времени
openfang logs

# Или просмотр файла логов
cat ~/.openfang/logs/openfang.log

Продвинутые возможности

Hands: 7 встроенных наборов навыков

Главная особенность OpenFang — это 7 встроенных мощных модулей "Hands":

HandФункционал
ClipЗагрузка видео с YouTube, нарезка, озвучка, автопостинг в соцсети
LeadЕжедневная генерация лидов, поиск клиентов, скоринг, дедупликация
CollectorСбор разведданных (OSINT), детектирование изменений, построение графа знаний
PredictorДвижок прогнозирования, доверительные интервалы, отслеживание точности
ResearcherГлубокие исследования, кросс-валидация источников, отчеты в формате APA
TwitterАвтоматические твиты, ответы на взаимодействия, планирование публикаций
BrowserВеб-автоматизация, заполнение форм, многошаговые рабочие процессы
# Активация Researcher Hand
openfang hand activate researcher

# Проверка статуса
openfang hand status researcher

# Пауза
openfang hand pause researcher

Разработка кастомных агентов

Создание своего агента:

# my-agent.toml
name = "my-agent"
version = "0.1.0"
description = "My custom agent"
author = "you"

[model]
provider = "groq"
model = "llama-3.3-70b-versatile"

[capabilities]
tools = ["file_read", "web_fetch", "bash"]
memory_read = ["*"]
memory_write = ["self.*"]
# Развертывание кастомного агента
openfang agent deploy my-agent.toml

Интеграция с MCP

OpenFang поддерживает протокол Model Context Protocol (MCP) для подключения внешних сервисов:

[[mcp_servers]]
name = "filesystem"
command = "npx"
args = ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/dir"]

Заключение

Сегодня мы прошли полный путь установки OpenFang:

  • ✅ Установили OpenFang (скриптом или компиляцией).
  • ✅ Инициализировали конфигурацию (config.toml + переменные окружения).
  • ✅ Запустили и проверили сервис.
  • ✅ Создали и протестировали первого агента.
  • ✅ Настроили различных LLM-провайдеров (Groq, Defapi, Claude, Gemini).
  • ✅ Разобрали решение типовых проблем.

Теперь у вас есть полноценная платформа для запуска AI-агентов! Следующие шаги:

  1. Активируйте один из "Hands" для автоматизации рабочих задач.
  2. Создайте собственного агента со специальными инструментами.
  3. Исследуйте MCP-интеграции для связи с внешними сервисами.

Удачи в экспериментах!

[!TIP]
Для рабочих сред рекомендуется использовать Defapi (в полцены) или настраивать нескольких провайдеров (Multi-Provider) для обеспечения отказоустойчивости.


Дополнительные материалы