# Portability: UNIVERSAL
# Last validated: 2026-05-17
# Next review: 2027-05-17

スタートアップ - セッションの開始
-------------------------

説明
スタートアップ プロトコルは全員との BACH セッションを初期化します。
必要なチェックを行い、最後のセッションのコンテキストを表示します。

COMMAND
------
bach --startup                    完全な起動プロトコル
bach --startup quick              クイック スタート (ディレクトリ スキャンなし)
bach --startup mode <m>           起動モードの変更 (gui|text|dual|silent)
bach --startup --mode=<m>         別のモードで 1 回開始
bach --startup --partner=NAME     パートナー固有のセッション (新しい v1.1.38)

パートナー セッション (v1.1.38)
--------------------------
有効なパートナー固有のセッション管理:

  bach --startup --partner=claude   開始クロード セッション
  bach --startup --partner=gemini   Gemini セッションを開始
  bach --startup --partner=user     標準 (デフォルト)
  bach --startup --partner=new      自動 ID を生成 (partner_HHMMSS)
  bach --startup --partner=simonAI  自分の名前を持つ新しいパートナー

利点:
- 同じパートナーの以前のセッションは自動的に終了します
- 異なるパートナー間での並行セッションが可能
- 繰り返しの起動時に「孤立した」オープンセッションを防止します
- Partner_presence テーブルの自動クロック カード (出勤/退勤)

スタンプ カード システム (v1.1.71):
- スタートアップの場合: パートナーは自動的に出勤します。
- シャットダウン中: パートナーは自動的にクロックアウトされます。
- パートナーの認識: 誰がまだオンラインであるかを示します
- マルチ LLM プロトコル V3: 複数のパートナーに対してアクティブ化

新しいパートナー:
  # 自分の名前を付ける (推奨)
  bach --startup --partner=simonAI

  # 名前なし (ID を生成)
  bach --startup --partner=new      -> Partner_143052
  bach --startup --partner=nameless -> partner_143052

例:
  # 双子座が仕事を始める
  bach --startup --partner=gemini --mode=silent

  # 後で: Gemini が再起動 -> 古いセッションが閉じられます
  bach --startup --partner=gemini --mode=silent
  [自動終了] 前の GEMINI セッションが終了しました: session_20260126_...

  # パートナーの意識は次のことを示しています:
  [パートナーへの意識]
   *** 他の 1 パートナーがオンラインです ***
     クロード: タスク_XYZ
   --> プロトコル V3 を使用してください! (bach --help multi_llm)

データベース:
  Memory_sessions.partner_id にはパートナー名が格納されます。
  Partner_presence はスタンプ カード (オンライン/オフライン/クラッシュ) を保存します。
  デフォルト: 手動セッションの場合は「user」。

ユーザー モード (v1.1.37)
--------------------
BACH は 4 つの起動モードをサポートします:

  gui GUI ダッシュボードがブラウザで開きます (デフォルト)
  テキスト コンソールのみ、ブラウザなし
  デュアル GUI + コンソールを並行して使用
  サイレント 自動的には何も開始しません

モードは data/user_config.json に保存されます。
詳細: bach --help モード

PROSYNC (起動プロトコル前)
-------------------------------
ProSync がアクティブ化されている場合 (bach setup prosync --multi-system)、
起動プロトコルが DB 同期を実行する前に、bach.py を実行します。
  - プル: トランジット ハブから新しいバックアップをロードしてマージします。
  - プッシュ (終了時): 独自のバックアップを中継ハブに書き込みます
ProSync は、起動ハンドラーではなく、bach.py main() で実行されます。
詳細: bach --help db_sync

エージェント回復のヒント
-------------------
エージェントが起動するか、エージェントの喫煙が起動/日チェックの一部である場合、
「バッハ エージェントの医師 [名前]」は、迅速な飛行前診断を提供するようになりました
回復の指示。 「bach Agent start ...」の前、または起動時に特に便利です。
エージェント ウィンドウがすぐに閉じます:

  bach agent doctor ati
  bach agent doctor ati --json

プロセス (v1.1.31)
----------------
起動プロトコルは次の手順を実行します:

1。 [ディレクトリスキャン]
   - 前回のセッション以降の変更を確認します
   - 新規/削除/変更されたファイルを表示します
   - 「クイック」でスキップ

2。 [最初の問題]
   - 自動エラーメッセージ (CHIAH による)
   - 過去 24 時間のエラーを表示します

3。 [パスヒーラーチェック] *** NEW v1.1.18 ***
   - パスの問題の予行チェック
   - 不正なパスを持つファイルを表示します
   - 修復: bach --maintain hell --execute

4。 [レジストリウォッチャー] *** 新しい v1.1.21 ***
   - DB/JSON の整合性をチェックします
   - 欠落しているテーブル、無効な JSON を表示
   - 詳細: bach --maintain registry

5。 [スキルヘルス] *** 新しい v1.1.21 ***
   - スキルとエージェントを検証します
   - SKILL.md ファイルの問題を示します
   - 詳細: バッハ --スキルの維持

6。 [最後のセッション]
   - 最後に完了したセッションを表示します
   - 作成/完了したタスク
   - 重要: "次のステップ" = continue_context

7。 [スナップショットが利用可能] ***新しい v1.1.17***
   - 最後のスナップショットを表示します (今日作成された場合)
   - スナップショット内の開いているタスクの数
   - 続行: バッチ スナップショットのロード

8。 ［メモリーチェック］
   - 作業記憶、事実、教訓をカウントします
   - 最後のノートを表示します

9。 [セッション登録]
   - 新しいセッション ID は、memory_sessions

10 に作成されます。 【ニュース】
    - メッセージボックスの未読メッセージを確認します
    - 送信者と件名を表示します
    - 詳細: bach msg 未読

11。 [定期タスク] *** 新しい v1.1.18 ***
    - 定期的なタスクの期限を表示します
    - 作成: bach --quirting check

12. [バッハシステムのタスク]
    - オープン/完了した BACH フレームワーク タスクを表示します
    - 優先順位による上位 3 (P1 > P2 > P3)
    - すべて: バッチタスクリスト

13. [ATI エージェント]
    - ATIフォルダーが存在するかどうかを確認します
    - ソフトウェア開発者エージェントのステータス

14. [学んだ教訓]
    - 保存されたレッスンを表示します
    - 詳細: バッハのレッスン最後の

15。 [オートローグ]
    - system/data/logs/auto_log.txt のエントリ
    - 最後の 3 つのコマンド
    - 詳細: bach --logs tail 20

16。 【インジェクター】
    - アクティブなインジェクターを表示します

17。 [スタートアップモード] *** 新しい v1.1.37 ***
    - 現在のモードを表示 (GUI/TEXT/DUAL/SILENT)
    - モードに応じて GUI および/またはコンソールを起動します
    - GUI: ブラウザーの http://127.0.0.1:8000
    - テキスト: bach.py を含む新しいコンソール ウィンドウ

出力例
---------------
-------------------------------------------------------
         バッハ セッションの開始
-------------------------------------------------------
時間: 2026-01-22 13:10:15 (木)
 モード: GUI
 パートナー: GEMINI
-------------------------------------------------------

[AUTO-CLOSE] 前の GEMINI セッションが終了しました: session_20260122_...

[PATH HEALER]
 [!] パスに問題があるファイルが 2 つ見つかりました
   - example_file.py
 --> bach --maintain hell --修復を実行

[最後のセッション]
 セッション: session_20260122_1200
 終了: 2026-01-22 12:30
 タスク: +3 作成、2 完了
 トピック: ヘルプ ファイルが更新されました...

 *** 次のステップ ***
   P2: shutdown.txt を更新します。
   P2:memory.txtをチェック

[スナップショットが利用可能]
 最後: auto_shutdown_20260122_1230 (12:30)
 スナップショット内のタスク: 5
 --> バッチ スナップショットの読み込みを続行します

[定期的なタスク]
 *** 期限切れのタスクが 1 つあります ***
   [weekly_backup] 毎週のバックアップ -> BACH
 --> bach --作成する繰り返しチェック

[BACH システムタスク]
 42 件がオープン、15 件が完了
 上位のタスク:
   [93] P1 GUI: /api/skills エンドポイント...
   [94] P1 GUI: スキル ダッシュボード...

-------------------------------------------------------
準備完了 - セッションが開始されました

注: シャットダウン時 -> bach --memory session "..."
-------------------------------------------------------

データ ソース
-------------
-memory_sessions: 最後のセッション、continuation_context
-memory_working: 現在のノート
-memory_facts: 永続的なファクト
-memory_lessons: 学んだ教訓
- session_snapshots: 復元ポイント
- タスク: BACH システムタスク
- メッセージ: MessageBox (bach.db)

HANDLER
-------
hub/startup.py 起動ハンドラー (DB ベース)

バージョン履歴
----------------
v1.1.2 ディレクトリ スキャン、メモリ、タスクによる基本的な起動
v1.1.17 + スナップショット表示
v1.1.18 + パス ヒーラー、定期的なタスク
v1.1.21 + レジストリ ウォッチャー、スキル ヘルス モニター
v1.1.37 + ユーザーモード (GUI、テキスト、デュアル、サイレント)
v1.1.38 + パートナー セッション (--partner=NAME、自動終了)

関連項目
----------
bach --help modes          ユーザー モード (gui、テキスト、デュアル、サイレント)
bach --help shutdown       セッションの終了
bach --help memory         メモリ システム
bach --help maintain       メンテナンス ツール (修復、レジストリ、スキル)
bach --help snapshot       スナップショットの管理
bach --help tasks          タスク管理
bach --help db_sync        ProSync: マルチシステム DB 同期
bach --help install         初期インストールとシナリオ
