# 作業の進行

プロンプトから変更のマージまでの流れと、作業を開始する3つの方法。

Canonical page: https://beeuni.ai/docs/ja/work

Beeuniは[セッション](/docs/ja/work/sessions)内で作業します。セッションとは、1つの作業単位のためのブランチとサンドボックスです。セッションは、その[変更リクエスト](/docs/ja/work/change-requests)（CR）がデフォルトブランチにマージされると終了します。このページでは、一連の流れを説明してから、セッションを開始する3つの方法を紹介します。

- [セッション](/docs/ja/work/sessions): 1つの作業単位のためのブランチとサンドボックス。
- [変更リクエスト](/docs/ja/work/change-requests): デフォルトブランチへの、レビューを経たマージ。
- [ランタイム](/docs/ja/work/runtime): セッションの実行に使われる環境変数、トークン、サンドボックスイメージ。

<a id="what-happens-when-a-session-starts"></a>

## セッションの開始時に起こること

1. Beeuniがセッションのレコードを作成し、デフォルトブランチからブランチを作成します。
   ブランチ名はセッションIDです。
2. Beeuniがサンドボックスイメージを解決します。デフォルトイメージか、マニフェストで宣言されている場合は独自の
   `.beeuni/Dockerfile`です。
3. サンドボックスが起動します。デーモンの`beeuni-agent`がリポジトリを`/workspace`にクローンし、セッションの[ハーネス](/docs/ja/work/harnesses)を起動します。
   セッションのステータスは`running`になります。
4. エージェントが作業します。Beeuniが設定する環境変数を使って[シークレット](/docs/ja/project/secrets)にアクセスし、セッションブランチにコミットしてプッシュします。
5. エージェントが[変更リクエスト](/docs/ja/work/change-requests)を作成します。内容をレビューしてマージします。作業がデフォルトブランチに反映される方法はこれだけです。

> **永続的な記録はGitだけです**
>
> セッションを停止すると、サンドボックスは一時停止しますが、ファイルは保持されます。セッションを削除すると、サンドボックスは完全に破棄されます。コミットしてブランチにプッシュした作業だけが残り、変更リクエストがマージされた場合にのみ、その作業が永続化されます。

<a id="three-ways-work-runs"></a>

## 作業を実行する3つの方法

セッションは次の3つの方法のいずれかで開始します。

| モード | 仕組み |
|---|---|
| オンデマンド | チャットで依頼すると、すぐに結果が得られます。 |
| 人間の支援あり | エージェントが作業し、重要な判断が必要な場面で確認します。 |
| 自動 | [トリガー](/docs/ja/connect/triggers)（スケジュールまたはWebhook）がセッションを最初から最後まで開始します。 |

<a id="related"></a>

## 関連項目

- [プロジェクト](/docs/ja/project): マニフェストを含むGitリポジトリ。
- [エージェント](/docs/ja/project/agents): 使用できるツールの範囲が指定されたMarkdown形式のペルソナ。
- [モデル](/docs/ja/project/models): セッションで使うモデルと、費用の負担者。
- [トリガー](/docs/ja/connect/triggers): セッションを開始するスケジュールとWebhook。
- [コネクタ](/docs/ja/connect/connectors): 外部アプリへの、範囲を限定したアクセス。
- [Slackとチャンネル](/docs/ja/connect/slack): セッションを開始するチャット画面。
- [コンピューター](/docs/ja/connect/computers): セッションのサンドボックスとは別のマシン。
- [アカウント](/docs/ja/accounts): 主体、ロール、割り当て。誰が何をできるか。
