maestro/README.ja.md
oss-sync 519e898c10
Some checks failed
CI / build-and-test (push) Has been cancelled
sync: update from private repo (2eb6723)
2026-06-16 03:38:42 +00:00

84 lines
5.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[English](README.md) | 日本語
# MAESTRO
![License](https://img.shields.io/badge/license-Apache--2.0-blue)
![Node](https://img.shields.io/badge/node-%E2%89%A522-3c873a?logo=node.js&logoColor=white)
![TypeScript](https://img.shields.io/badge/TypeScript-3178c6?logo=typescript&logoColor=white)
![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-fe5196?logo=conventionalcommits&logoColor=white)
![PRs welcome](https://img.shields.io/badge/PRs-welcome-brightgreen)
**MAESTRO** — タスクを LLM 駆動で実行するエージェントオーケストレーションプラットフォーム。タスクの種類を LLM が自動判定し、適切なワークフロー(**Piece**)で処理する。ツールはサンドボックス化されたランタイムで実行され、ワークスペース・ファイル・進捗を Web UI で管理できる。
OpenAI 互換の LLM エンドポイント([Ollama](https://ollama.com/) / vLLM など)があれば単体で動作する。
## 主な機能
- **タスク自動ルーティング** — タスク本文を LLM が分類し、最適な PieceYAML ワークフロー)へ振り分け。
- **Piece × Movement** — ReAct ループで LLM とツールが対話しながら、段階的にタスクを進める。
- **豊富なツール群** — ファイル操作Read/Write/Edit/Bash/Glob/Grep、OfficePDF/Excel/Docx/PPTX、Web 取得、ブラウザ操作Playwright、画像、SQLite、ナレッジ検索RAG、SSH、サブタスク並列実行、MCP 連携、ほか。
- **Bash サンドボックス** — bwrap によるファイルシステム/ネットワーク/環境変数の隔離(不在時は強化版 whitelist にフォールバック。Python パッケージはプリベイク。
- **LLM Gateway任意** — 仮想キー・予算・メトリクス付きの LLM プロキシ。複数 GPU/チームでの共有運用に対応。
- **学習Reflection・定期タスク・タスク共有・OAuth 認証Google/Gitea** — いずれも任意で有効化。
- **Web UI** — タスク作成・進捗・成果物プレビュー・設定編集・スキル/Piece 管理。
## クイックスタート
### Docker最短
```bash
cp .env.example .env # OLLAMA_BASE_URL / OLLAMA_MODEL を設定
docker compose up -d
# http://localhost:9876 を開く
```
Compose は安全のため `127.0.0.1:9876` のみに公開する。別ホストからアクセス可能にする前に OAuth 認証を設定し、TLS 対応のリバースプロキシを配置すること。LLM エンドポイントは `.env` / `config.yaml` で指定する。
Docker の詳細ガイドLinux のネットワーク・データ永続化・サンドボックス・トラブルシューティング)は **[docs/docker.md](docs/docker.ja.md)**。
### ソースから
```bash
git clone https://gitea.example.com/your-org/maestro.git
cd maestro
npm ci && npm --prefix ui ci
cp config.yaml.example config.yaml # provider / workers を編集
scripts/build-all.sh
scripts/server.sh start # http://localhost:9876
```
詳しい手順は **[docs/getting-started.md](docs/getting-started.md)** を参照。
## 必要要件
- **Node.js 22+**
- **OpenAI 互換の LLM エンドポイント**Ollama / vLLM など)
- 任意Bash サンドボックス用): `bwrap`bubblewrap, 非特権 user namespace+ `python3`/`pip`
## ドキュメント
- **[docs/getting-started.md](docs/getting-started.md)** — インストール・初回起動・最初のタスク・認証/サンドボックスの有効化
- **[docs/docker.md](docs/docker.ja.md)** — Docker Compose での運用LLM エンドポイント・永続化・サンドボックス・トラブルシューティング)
- **[docs/configuration.md](docs/configuration.md)** — `config.yaml` の全設定項目リファレンス
- **[docs/architecture.md](docs/architecture.md)** — 実行フロー・Piece/Movement・ツール・DB・サンドボックス
- **[docs/tools/](docs/tools/)** — 各ツールの詳細
- **[docs/operations/bash-sandbox-provisioning.md](docs/operations/bash-sandbox-provisioning.md)** — 本番でのサンドボックス有効化手順
- **[AGENTS.md](AGENTS.md)** / **[CONTRIBUTING.md](CONTRIBUTING.md)** — コントリビュータ向け
- **[CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md)** — コミュニティ行動規範
- **[SECURITY.md](SECURITY.md)** — セキュリティ方針・脆弱性報告
- **[docs/security-hardening.md](docs/security-hardening.ja.md)** — 本番ハードニングのチェックリスト
## セキュリティ
既定では認証なしで動作するため、信頼できないネットワークへ直接公開しないこと。複数ユーザーまたは外部公開環境では OAuth 認証、`safety.bash_sandbox: always`、TLS リバースプロキシを有効にする。詳細は [SECURITY.md](SECURITY.md) を参照。
## サーバー管理
```bash
scripts/server.sh start | stop | restart | status | logs
```
## ライセンス
[Apache-2.0](LICENSE)。