Evolve
現在のリポジトリを、固定されたセマンティクスとオプションの境界付き修正により、ガバナンスされたフェーズを通じて進化させます。目標がない場合のデフォルト動作は内省的です:リポジトリを分析し、1つの境界付き改善を推奨し、計画品質のアーティファクトセットで停止します。
これは自律的なコード生成ではありません。認知の周囲の形状をガバナンスします — 各フェーズは型付きアーティファクトを生成し、すべての変更には承認が必要で、各ステップはレシートを発行します。単一のevolve実行は、オープンエンドな改善ループではなく、境界付きアーティファクトで終了します。
標準セマンティクス
複雑なrunxスキルは、1つの内部フェーズ言語を共有します:
scopeingestmodelmaterializeevaluatereviseverifyratify
現在のevolveランナーは境界付きサブセットを使用し、一部のフェーズをより少ない具体的なステップに圧縮します。それは許容されます。固定されるのはフェーズの意味であり、ステップ数ではありません。
現在のランナーマッピング
Introspect
呼び出し元仲介(エージェントステップ)。これはゼロ引数の推奨レーンです。scope + ingest + modelを使用して現在のリポジトリを分析し、以下を生成します:
opportunity_report— リポジトリの証拠に基づくランク付けされた機会recommended_objective— 1つの境界付き次の一手change_plan— その推奨のための具体的な計画spec_document— ガバナンスが適用される場合のドラフトscafld形式の仕様
このランナーでは承認ゲートも変更も発生しません。内省のみです。
Preflight
決定論的。これは現在のscope + ingestステップです。ターゲットリポジトリを検査し、repo_profileを生成します:
リポジトリルート、git状態、ベースブランチ、ダーティワークツリー、.ai/の有無(scafld初期化済み)、検出された言語、テストコマンド、リスクシグナル。エージェントの認知なし、変更なし。
Plan
呼び出し元仲介(エージェントステップ)。これは現在のmodelステップであり、境界付き計画アーティファクトもドラフトします。目標とリポジトリプロファイルを基に、1パスで4つのアーティファクトを生成します:
objective_brief— ターゲットの種類、制約、成功基準を含む再ステートメントdiagnosis_report— 目標に対する現在のリポジトリ状態change_plan— 順序付けられたフェーズ、受け入れチェック、タッチポイント、リスクspec_document— ガバナンスが適用される場合のドラフトscafld仕様
終了ガード
evolveは現在、計画/仕様アーティファクトで停止します。呼び出し元がterminate=patchまたはterminate=prを要求した場合、ランナーは変更や公開を装う代わりに、明確なエラーで即座に失敗します。
修正ポリシー
evolveは現在、修正ラウンドを実行しません。これは意図的です。境界付き修正が導入される場合、それは明示的でポリシー制御されなければなりません。例えばmax_rounds: 1または2と、定義された停止およびエスカレーション条件が必要です。
呼び出しモード
runx evolve— 現在のリポジトリを内省し、1つの境界付き改善を推奨runx evolve "<objective>"— 指示された変更を計画runx evolve "<objective>" --terminate patch|pr— 実際の実行レーンが存在するまで現在は拒否
進化ターゲット
目標文字列がターゲットを決定します。プリフライトフェーズは、現在のリポジトリコンテキストから具体的なターゲットを解決します。
- リポジトリ: "websocketアダプターサポートを追加" — 目標に向けてコードベースを改善
- スキル:
--skill ./skills/sourcey— 特定のスキルパッケージを改善 - レシート:
--receipt rx_8f3a— 失敗した実行に基づいて修復 - 自己: プルービンググラウンドでrunxリポジトリ自体に対して実行
終了条件
spec(デフォルト): 計画後に停止。変更なし。patch: この出荷されたランナーではまだサポートされていません。pr: この出荷されたランナーではまだサポートされていません。
境界ルール
- 単一のevolve実行は、別の隠れたループではなく、境界付きアーティファクトで終了します。
- ポリシーは構造化フィールドを評価し、散文は評価しません。
- 後で実行が追加される場合、合成された内部ステップではなく、実際のツール、scafld、または他のガバナンス付きレーンを通じてルーティングする必要があります。
入力
objective(オプション): 何に向かって進化するか。省略された場合、evolveは内省的な推奨ランナーを使用します。repo_root(オプション): リポジトリルート。デフォルトはcwd。terminate(オプション): デフォルトはspec。他の値は現在、出荷されたランナーによって拒否されます。