エージェント/モードの設定スキーマと、ディスク上の markdown 定義をパースするローダー。

Members

(static, constant) Info

デコード時に normalize を適用するデコード済みエージェント設定スキーマ。statics 経由で Zod 相当も提供する。

(inner, constant) AgentSchema

記述されたままの生のエージェント設定スキーマ。任意の追加キーを許容する(後で正規化される)。

(inner, constant) Color

エージェントの色のスキーマ: 6 桁の 16 進コード、または名前付きのテーマカラー。

(inner, constant) KNOWN_KEYS

認識されるトップレベルのエージェント設定キーの集合。それ以外のキーは options に畳み込まれる。

Methods

(static) load(dir) → {Promise.<Object>}

{agent,agents}/**\/*.md をスキャンしてディレクトリ配下のすべてのエージェント定義を読み込む。各 markdown ファイルの frontmatter と本文をパースし、エージェント設定にデコードする。パースの失敗はログ出力されセッションエラーイベントとして発行されたうえでスキップされ、読み込み全体を中断することはない。

Parameters:
NameTypeDescription
dirstring

エージェントの markdown ファイルをスキャンするベースディレクトリ。

Returns:

エージェント名からそのパース済み設定へのマップ。

Type: 
Promise.<Object>

(static) loadMode(dir) → {Promise.<Object>}

{mode,modes}/*.md をスキャンしてディレクトリ配下のすべてのモード定義を読み込む。各 markdown ファイルをパースし、mode: "primary" を強制したエージェント設定としてデコードする。パースの失敗はログ出力されセッションエラーイベントとして発行され、スキーマのデコードに失敗したエントリはスキップされる。

Parameters:
NameTypeDescription
dirstring

モードの markdown ファイルをスキャンするベースディレクトリ。

Returns:

モード名からそのパース済み設定(いずれも mode は "primary" に設定される)へのマップ。

Type: 
Promise.<Object>

(inner) normalize(agent) → {Object}

生のエージェント設定を正規化する: 未知のキーを options に昇格させ、非推奨の tools ブール値マップを permission オブジェクトに変換し(write/edit/patch は permission.edit に集約される)、明示的な permission があればその上にマージし、steps ?? maxSteps を合体させる。

Parameters:
NameTypeDescription
agentObject

パース済みの生のエージェント設定。

Returns:

optionspermissionsteps が確定した正規化済みのエージェント設定。

Type: 
Object