All in Luna
All in Lunaは1つのパブリックエントリポイントです。以下のいずれかの入力を受け付けます:
- アイデアまたは1文の目標;
- 既存の計画;
- アクティブなランまたはレガシーランのスナップショット;
- Research Routesパケット。
入力を型付けされた
RunIntentにコンパイルし、登録されたWorkflow Packを選択し、そのTaskGraph(コントラクト、依存関係、所有権、done-when条件、WorkGraphテンプレート、リソースデフォルトを含む)をコンパイルします。次にvNextランタイム/CLIを呼び出してグラフを永続化し、準備のできたLaneを解放し、実際のホストレシートを取り込み、ルート結果が完了するか具体的なブロッカーが返されるまで処理を続けます。
最優先の正確なアクションリレー
論理的なLocalDispatchIntent値はHostActionではありません。HostAdapterはまずそれらをlane-direct-work/v1計画または正確なHostAction.toolオペコードに解決します:
HostAction.argumentsでその正確なツールを呼び出します。- 別の能力に翻訳、近似、または代替してはなりません。
top_level_taskはサブエージェント、現在のスレッド、または直接実行にフォールバックしてはなりません。- 生のレシートをすぐに取り込み、もう一度ティックします。
HostAdapterがバインドされていない場合は、ACTION_RELAY_REQUIREDを返し、正確なアクションを保持します。- 能力発見により正確なツールが存在しないことが確認された場合にのみ、
HOST_CAPABILITY_BLOCKEDを返します。
ローカルワークの場合、native_preferredはアドバタイズされたネイティブワーカーまたは実際のLane-direct計画を使用します。native_requiredは存在しない場合にブロックし、direct_onlyは決してスパウンしません。直接レシートは完了ではありません。LaneはWorkUnitを実行し、検証済みのwork-handoff/v1を生成する必要があります。
レシートは明示的にaction_contract_hash、actual_tool、actual_capabilityを提供します。間違った実際のツールはHOST_PROTOCOL_VIOLATIONであり、タスクが開始された証拠ではありません。
Laneブートストラップと永続的ドライバー
すべてのパブリックcodex_app__create_threadディスパッチは、その永続的なアクションペイロードと子プロンプトの両方に完全なlane-bootstrap/v1オブジェクトを埋め込みます。これには、ラン/タスク/試行のID、TaskEnvelopeダイジェスト、ランタイムSQLiteパス、Contract/Context/WorkGraph参照、ワークスペース、許可されたローカル能力、禁止されたグローバル能力、必要なlane-handoff/v1応答が含まれます。子Laneは同じStoreを再度開き、これらのオブジェクトを自分自身でロードする必要があります。そのプロンプトは決して自然言語の成果だけではありません。
CoordinatorDriverは永続的な外側のループです:正確なアクションをスケジュールし、レシートを取り込み、トップレベルのスレッドを待機/読み取り、型付けされたLaneハンドオフを取り込み、調整し、すぐに新たに準備ができたタスクを解放します。LaneDriverは一致するローカルWorkGraphループ(スナップショット、動的なローカル拡張、ワーカーハンドオフ、同一ワーカー補正、Laneハンドオフ合成を含む)を実行します。ウェーブは単なるUIグループ化です:依存関係の準備ができた作業は即座に解放されます。
ランタイム形状
会話
-> グローバルコーディネーター
-> 独立したタスクLane
-> 有界な再帰的WorkUnit
-> ツール / スキル / プラグイン / MCP
生のツール出力をArtifact Storeに保持します。型付けされたコントラクト、アーティファクト参照、コンテキストスライス、レシート、ハンドオフを上位に渡します。子WorkUnitはその親スコープ、権限、所有権、リソースエンベロープを狭めなければなりません。Lane間のリクエストは昇格リクエストになります。
入力とPackルーティング
SinglePublicSkillAPI.compile()またはallinluna startを使用します:
- プレーンな目標 -> デフォルトで
delivery; - 既存の計画 -> 読み取り専用のレガシーインポート、その後
delivery; - アクティブなラン -> 読み取り専用のラン状態インポートとリカバリ指向のコンパイル;
- Research Routesパケット ->
research-routes-bridge、Claims、Evidence、 unknowns、 contradictions、 failure regimes、HumanDecision、実験許可境界を保持。
ユーザーが明示的にそのワークフローを要求した場合はgsdを使用します。その実行可能Packは、明確化、仕様化、分解、実装、検証、統合、動的なLaneローカル拡張、有界なWorkUnit、コントラクトハンドオフ、ローカル障害復旧を提供します。GSDフェーズをCoreに追加しないでください。
リソースと権限
リソースの選択は次の優先順位に従います:明示的なユーザー要求、次にタスク/WorkUnitオーバーライド、ユーザー設定、Pack能力、デプロイメント/ホスト能力、最後に現在のセッション/ホストデフォルト。Coreはベンダーニュートラルであり、プロバイダーや具体的なモデルルートをハードコードしません。要求値、解決値、実際の値は別々に保持します。ホストが実際のモデルレシートを提供できない場合は、actual: nullおよびactual_state: unresolvedを記録します。フォールバックを主張したりレシートを偽造したりしないでください。より狭いスコープはコンピュートリソースを変更できますが、権限や所有権を拡張することはできません。
ホストリソースルートテレメトリはオプションのアダプタ診断であり、実行または結果完了の要件ではありません。ホストルートは、実行可能なcodex_app__create_threadアクションが凍結される前に、必要なmodelを解決する必要があります。未解決のルートは実行不可能な解決アクションを発行します。明示的なモデルと推論テレメトリがない場合は、actual: nullおよびactual_state: unresolvedを記録し、独立した要求値と解決値を保持します。永続化されたレシートはresource_receipt.requested、resolved、actual、actual_stateを公開します。実際の証拠が利用可能な場合、アダプタは要求値と永続化されたディスパッチアクションを比較し、actualが報告された解決ルートと一致することを要求します。レシートは独自の検証ベースラインを確立してはいけません。ポリシーで明示的に指定されない限り、ルートはハードロックされません。ロックされたルートはそのレシートと一致する必要があります。
アクション境界でジャストインタイムで権限を要求します。読み取り専用のコンパイルは、資格情報、公開、デプロイメント、プッシュ、破壊的作業、またはライブ外部変更を要求しません。そのようなアクションに達した場合は、ask、allowed、またはdeniedを含むPermissionIntentを返します。質問を前倒ししたり、アクションを黙って実行したりしないでください。
CLIとリカバリ
allinluna start --goal "..."
allinluna status RUN_ID
allinluna next-actions RUN_ID
allinluna ingest-receipt RUN_ID RECEIPT.json
allinluna pause RUN_ID
allinluna resume RUN_ID
allinluna retry RUN_ID --task TASK_ID
allinluna cancel RUN_ID --task TASK_ID
allinluna reconcile RUN_ID
allinluna drive RUN_ID
allinluna lane start RUN_ID TASK_ID
allinluna lane status RUN_ID TASK_ID
allinluna lane tick RUN_ID TASK_ID
allinluna lane drive RUN_ID TASK_ID
allinluna lane next-actions RUN_ID TASK_ID
allinluna lane ingest-receipt RUN_ID TASK_ID RECEIPT.json
allinluna lane ingest-direct-result RUN_ID TASK_ID RESULT.json
allinluna lane handoff RUN_ID TASK_ID
ランタイムCLIはstart、status、next-actions、ingest-receipt、pause、resume、retry、cancel、set-policy、reconcileを公開します。レガシー計画/ランインポートにはパブリック互換性APIを使用します。これらはホストアダプタに対してホストニュートラルなアクションを返し、保留中のクライアントIDをアクティブなレシートとして扱うことはありません。
リカバリは不変のアーティファクトを保持し、リース、レシート、またはコンテキストスナップショットが調整された後、準備のできたアクションを再計算します。
レジストリ/ランチャーは内部的な発見可能性メカニズムにすぎません。通常のユーザーはこのコンテキストスキルとその目標/ジャーニーを通じてエントリします。エキスパートはPackマトリックスとマニフェストコントラクトを検査できます。