OpenFang 構築チュートリアル

AI Expert

探検者レベル:入門 | 所要時間:15 分 | 習得内容:OpenFang のデプロイとモデル設定

はじめに

軽量で強力な AI Agent フレームワークをお探しなら、OpenFang は注目に値します。これは Rust で書かれたオープンソースの Agent Operating System で、システム全体をコンパイルしても約 32MB と非常に軽量ながら、Anthropic Claude、Google Gemini、OpenAI GPT、DeepSeek、Groq など 20 以上の主要な LLM プロバイダーを標準でサポートしています。

従来のフレームワークとは異なり、OpenFang は単なる Chatbot のラッパーではありません。スケジュールに従って動作し、ナレッジグラフの構築、ターゲットの監視、リードジェネレーション、ソーシャルメディア管理を行い、その結果を自動的に Dashboard へ報告する、真の自律型 Agent システムです。

今日は、この環境を一緒に構築しましょう。


対象読者

  • 経験 1〜5 年の開発者
  • AI Agent に興味がある技術者
  • ローカル AI 機能を迅速にデプロイしたい技術愛好家

コア依存関係と環境

開始する前に、マシンが以下の条件を満たしていることを確認してください。

  • OS: Linux、macOS、Windows (WSL2 または PowerShell)
  • Rust: 1.75+ (rustup での管理を推奨)
  • メモリ: 最低 4GB RAM
  • ディスク: 最低 500MB の空き容量

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/                 # Agent テンプレートディレクトリ
│   ├── hello-world/
│   ├── coder/
│   ├── researcher/
│   └── ...
├── crates/                # Rust crates (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"

# Agent デフォルト設定
[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!

サービスの検証

# ヘルスチェック
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 の Web Dashboard が表示されます。


初めての Agent

内蔵テンプレートからの作成

OpenFang には agents/ ディレクトリにいくつかの内蔵 Agent テンプレートが用意されています。

# 利用可能なテンプレートをリストアップ
openfang template list

主なテンプレート:

  • hello-world: 最もシンプルな対話型 Agent
  • coder: コード作成アシスタント
  • researcher: リサーチアシスタント
  • assistant: 汎用アシスタント

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"}'

正常なレスポンスが返ってくれば、Agent は動作しています!


モデル設定の実践

Groq の設定(無料枠)

Groq は無料枠を提供しており、非常に高速なため開発やテストに最適です。

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

環境変数:

export GROQ_API_KEY="gsk_あなたのキー"

[!TIP]
Groq の無料枠にはレート制限があります。開発テストには適していますが、本番環境では他のプロバイダーの使用を検討してください。

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-あなたのキー"

トラブルシューティング

Q1: API Key が反映されない

確認手順:

  1. 環境変数が正しくエクスポートされているか確認:echo $GROQ_API_KEY
  2. OpenFang サービスを再起動:openfang restart
  3. プロバイダーの状態を確認:curl http://127.0.0.1:4200/api/providers

Q2: モデルが「利用不可」と表示される

考えられる原因:

  • 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

Q3: ポート 4200 が既に使用されている

# 占有しているプロセスを確認
lsof -i :4200   # Linux/macOS
netstat -ano | findstr :4200  # Windows

# 設定ファイルを変更して別のポートを使用する
# ~/.openfang/config.toml
port = 4201

Q4: コンパイルエラーが発生する

Rust のバージョンが十分新しいことを確認してください:

rustup update
rustc --version  # 1.75 以上であること

依存関係の問題がある場合は、以下を試してください:

cargo clean
cargo build --release

Q5: Windows でコマンドが見つからない

OpenFang のバイナリファイルが PATH に含まれていることを確認してください:

# バイナリディレクトリを PATH に追加 (永続的)
$env:PATH += ";$env:USERPROFILE\.openfang\bin"

# またはフルパスを直接使用
~\.openfang\bin\openfang.exe start

Q6: ログを確認したい

# リアルタイムでログを確認
openfang logs

# またはログファイルを確認
cat ~/.openfang/logs/openfang.log

応用的な活用方法

Hands: 7 つの内蔵機能パック

OpenFang の最大の特徴は、7 つの強力な内蔵「Hands」です:

Hand機能
ClipYouTube 動画のダウンロード、カット、吹き替え、SNS への自動投稿
Lead毎日のリード(見込み客)生成、発掘、スコアリング、重複排除
CollectorOSINT 情報収集、変化検知、ナレッジグラフ構築
Predictor予測エンジン、信頼区間、正確性の追跡
Researcher深層調査、マルチソース相互検証、APA 形式のレポート作成
Twitterツイート自動投稿、リプライ対応、投稿スケジュール管理
BrowserWeb オートメーション、フォーム入力、マルチステップワークフロー
# Researcher Hand を有効化
openfang hand activate researcher

# ステータスを確認
openfang hand status researcher

# 一時停止
openfang hand pause researcher

カスタム Agent 開発

カスタム Agent を作成します:

# 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.*"]
# カスタム Agent をデプロイ
openfang agent deploy my-agent.toml

MCP 統合

OpenFang は MCP (Model Context Protocol) をサポートしており、様々な外部サービスと連携できます:

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

まとめ

本日は、OpenFang の完全な構築プロセスを完了しました:

  • ✅ OpenFang のインストール(公式スクリプトまたは手動コンパイル)
  • ✅ 初期設定(config.toml + 環境変数)
  • ✅ サービスの起動と検証
  • ✅ 初めての Agent の作成とテスト
  • ✅ 各種 LLM プロバイダーの設定(Groq, Defapi, Claude, Gemini)
  • ✅ トラブルシューティング

これで、あなたは完全な AI Agent 実行プラットフォームを手に入れました!次は以下に挑戦してみてください:

  1. いずれかの Hands を有効化し、自動化機能を体験する
  2. カスタム Agent を作成し、独自のツールと能力を定義する
  3. MCP 統合を探索し、さらに多くの外部サービスと連携する

活用を楽しんでください!

[!TIP]
本番環境では、サービスの安定性を確保するために Defapi (半額) の利用や、複数の Provider を設定してフェイルオーバーを実現することをお勧めします。


参考文献