メインコンテンツまでスキップ

🧪 開発ブランチガイド

正式リリース前に最新機能を試してみませんか?dev ブランチには、将来メインリリースに取り込まれる最先端の改善と実験的機能が含まれています。

実験的なソフトウェア

dev ブランチは 実験版 であり、バグ、未完成の機能、互換性を損なう変更が含まれる可能性があります。不安定になる可能性を許容でき、Libre WebUI の改善に協力したい場合にのみ使用してください。

🎯 Dev ブランチとは?

開発ブランチ(dev)では、新機能を安定版の main ブランチへマージする前にテストします。次の内容が含まれます。

  • 安定版にはまだない 最新機能
  • テスト中の バグ修正
  • UI と機能に対する 実験的な改善
  • 開発中の パフォーマンス最適化

🚀 Dev ブランチの使い方

Docker のセットアップ(推奨)

開発用 Compose ファイルはホストの Docker ソケットをマウントするため、Docker を利用できれば Work は 既定で動作します。タスクコンテナはホストのデーモン上で実行され、docker ps に表示されます。 Linux では先に .envDOCKER_GID を設定してください。

外部 Ollama を使う場合:

# Clone the repository
git clone https://github.com/libre-webui/libre-webui.git
cd libre-webui

# Switch to dev branch
git checkout dev

# Start the dev image with external Ollama
docker compose -f docker-compose.dev.external-ollama.yml up -d

シンプルな Docker 構成:

# Use the dev branch image
docker run -d -p 3000:3001 -v libre-webui:/app/backend/data --name libre-webui-dev --restart always ghcr.io/libre-webui/libre-webui:dev

ソースから起動する

# Clone and switch to dev branch
git clone https://github.com/libre-webui/libre-webui.git
cd libre-webui
git checkout dev

# Install dependencies
npm install

# Start development server
npm run dev

Work をテストする

  1. Docker を起動し、バックエンドを実行するのと同じユーザーで docker info が成功することを確認します。
  2. npm run dev で Libre WebUI をソースから起動します。
  3. 管理者としてサインインします。
  4. Work を選び、ツール対応の Ollama、Ollama Cloud、または設定済みのプラグイン型モデルを使用します。

バックエンドのプロバイダーとコンテナポリシーに絞ったテストは、次のコマンドで実行します。

npm run test:work

このテストでは、生成された Docker ポリシー、パスの包含関係、ライフサイクルと容量の動作、 OpenAI 互換・Anthropic・Gemini のツールアダプターを検証します。ランタイム境界の全体像は Work:隔離されたワークスペースを参照してください。

🔄 最新状態に更新する

dev ブランチは頻繁に更新されます。最新の変更を取得するには、次を実行します。

# Update your local dev branch
git pull origin dev

# Refresh the dev Compose stack
docker compose -f docker-compose.dev.external-ollama.yml pull
docker compose -f docker-compose.dev.external-ollama.yml up -d

# Or restart simple Docker
docker pull ghcr.io/libre-webui/libre-webui:dev
docker stop libre-webui-dev && docker rm libre-webui-dev
docker run -d -p 3000:3001 -v libre-webui:/app/backend/data --name libre-webui-dev --restart always ghcr.io/libre-webui/libre-webui:dev

🐛 バグを見つけたら改善にご協力ください

バグ報告は非常に貴重です。効果的に問題を報告する方法を紹介します。

報告前の確認

  1. 既存の Issue を確認するGitHub Issues を検索し、重複を避けます。
  2. 安定版を試す:バグが main ブランチにはなく、dev にだけ存在することを確認します。
  3. 一貫して再現できるか確認する:同じバグをもう一度発生させられるか試します。

バグの報告方法

🐛 GitHub でバグを報告する

次の情報を含めてください:

**Environment:**

- Branch: dev
- Version: [git commit hash or date]
- OS: [Windows/macOS/Linux]
- Browser: [Chrome/Firefox/Safari version]
- Setup: [Docker/Source/etc.]
- Docker: [version and whether `docker info` succeeds, for Work issues]
- Work model/provider: [exact route, when applicable]

**Bug Description:**
Clear description of what went wrong

**Steps to Reproduce:**

1. Go to...
2. Click on...
3. See error...

**Expected Behavior:**
What should have happened

**Actual Behavior:**
What actually happened

**Screenshots/Logs:**
[If applicable, add screenshots or error logs]

**Work Activity:**
[Relevant tool call/result or preview output, with secrets removed]

Git コミットハッシュを確認する

# Find your current dev branch commit
git rev-parse HEAD

# Or get a short version
git rev-parse --short HEAD

🏆 貢献とクレジット

dev ブランチを利用すると、テストコミュニティの一員として参加できます。貢献者は次の方法で紹介されます。

貢献者のクレジット

  • CONTRIBUTORS.md に掲載
  • 大きな貢献は リリースノートで紹介
  • コミットメッセージでの 共同著者表記
  • プロジェクトのお知らせでの 特別な謝辞

現在の貢献者

素晴らしいコミュニティのメンバーには、次の方々がいます。

  • rob - プロジェクトメンテナー
  • jm - ネットワークアクセスの改善
  • そのほかの貢献者全リストをご覧ください。

コードで貢献するには

  1. リポジトリをフォークする
  2. dev から機能ブランチを作成するgit checkout -b feature/amazing-feature dev
  3. 変更を加える
  4. dev ブランチに対する Pull Request を送る

詳しい手順はコントリビューションガイドラインを、プロジェクトの倫理ガイドラインとガバナンスモデルはコミュニティ憲章を参照してください。

Pull Request のチェック

中間の feature ブランチや fix ブランチに対する積み重ね型 Pull Request を含め、すべての Pull Request で Format & Lint ワークフローが実行されます。独立したジョブにより、フォーマット、フロントエンドと バックエンドの lint、TypeScript の型、パッケージテストとリグレッションテスト、Playwright の ブラウザースイートを確認します。ブラウザーテストが失敗すると、デバッグ用の Playwright 結果がアップロードされます。

Electron Dev Build ワークフローでは、macOS、Windows、Linux の成果物もパッケージ化されます。 macOS の Pull Request ビルドでは、アップロード前にパッケージ済みアプリケーションを検証できるよう、 認証情報を使わないプロジェクトの ad-hoc 署名が保持されます。Pull Request のワークフローには、 Developer ID または notarization の認証情報は渡されません。

Docker Build Test and Push ワークフローは、中間ブランチへの積み重ね型 Pull Request を含むすべての Pull Request に対して amd64 と arm64 の両イメージをビルドします。Pull Request のビルドでは、 コンテナレジストリへのログイン、イメージダイジェストのプッシュ、マルチアーキテクチャマニフェストの公開は行いません。

Pull Request を作成する前に、同じアプリケーションレベルのチェックをローカルで実行します。

npm run format:check
npm run lint
npm run test:package
npm run test:e2e

⚠️ 重要な注意事項

データの安全性

  • dev ブランチへ切り替える前に、データをバックアップしてください。
  • Work タスクのファイルは、個別の libre-work-* Docker 名前付きボリュームに保存されます。破壊的な タスクまたはユーザーのライフサイクル変更をテストする前に、SQLite データディレクトリとは別にバックアップしてください。
  • dev のテストには 別の Docker ボリュームを使用してください。
    # Use different volume name for dev
    docker run -d -p 3000:3001 -v libre-webui-dev:/app/backend/data --name libre-webui-dev ghcr.io/libre-webui/libre-webui:dev

起こり得る問題

  • 互換性を損なう変更により、設定の更新が必要になる場合があります。
  • 機能が未完成であったり、予告なく変更されたりする場合があります。
  • 最適化のテスト中は パフォーマンスが変動する場合があります。
  • UI 要素の見た目が変わったり、予期しない動作をしたりする場合があります。

安定版を使うべき場合

次に該当する場合は、安定版の main ブランチへ戻してください。

  • 重要な作業に信頼性が必要な場合
  • バグが多すぎる場合
  • テスト済みの安定した環境を使いたい場合
# Switch back to stable
git checkout main
docker compose -f docker-compose.external-ollama.yml pull
docker compose -f docker-compose.external-ollama.yml up -d

🌟 コミュニティに参加する


Libre WebUI の未来を一緒に形作りませんか? 🚀

dev ブランチでのテスト、フィードバック、貢献は、すべてのユーザーの体験を直接改善します。開発コミュニティへのご参加に感謝します!