クラス: AiToolStore
定義: plugins/ai/src/AiTool.ts:107
AiTool のストア。ai/ を走査します。
拡張
コンストラクター
コンストラクター
new AiToolStore(): AiToolStore;
定義: plugins/ai/src/AiTool.ts:108
戻り値
AiToolStore
上書き
プロパティ
base
readonly base: AbstractComponentClass<AiTool<unknown>>;
定義: src/component/ComponentStore.ts:50
この種別のコンポーネントが継承する基底クラス。
継承元
container
readonly container: Container;
定義: src/component/ComponentStore.ts:56
コンテナ。レジストリへの登録時に割り当てられます。
継承元
logger
readonly logger: Logger;
定義: src/component/ComponentStore.ts:59
このストア用の子ロガー。登録時に割り当てられます。
継承元
name
readonly name: string;
定義: src/component/ComponentStore.ts:47
ストア名(= 自動探索ディレクトリ名)。
継承元
suffix
readonly suffix: string;
定義: src/component/ComponentStore.ts:53
クラス名から取り除く接尾辞(ComponentStoreOptions.suffix)。
継承元
メソッド
applyOptions()
protected applyOptions(component, options): void;
定義: plugins/ai/src/AiTool.ts:114
解決済みメタデータをインスタンスへ適用します — 種別固有フィールドの 割り当てと必須項目の検証はここで行います。ロード時に弾く場合は (ComponentLoadError を推奨)例外を投げてください。
パラメータ
component
options
Partial<AiToolOptions>
戻り値
void
上書き
available()
available(context): AiTool<unknown>[];
定義: plugins/ai/src/AiTool.ts:138
そのコンテキストで使えるツール(名前順)。
パラメータ
context
戻り値
AiTool<unknown>[]
bind()
protected bind(component): void;
定義: src/component/ComponentStore.ts:247
ロード済みコンポーネントをランタイムへ配線します(例: リスナーの
イベント購読)。onLoad の後、ストアに追加された状態で呼ばれます。
パラメータ
component
戻り値
void
継承元
deriveName()
protected deriveName(className): string;
定義: src/component/ComponentStore.ts:229
クラス名からコンポーネント名を導出します: 種別サフィックス
(ComponentStore.suffix)を取り除き、ケバブケース化します
(UserInfoCommand → user-info)。
カスタム種別で慣例を変えたい場合はオーバーライドしてください。
パラメータ
className
string
戻り値
string
継承元
load()
load(cls, location?): Promise<AiTool<unknown>>;
定義: src/component/ComponentStore.ts:122
単一のコンポーネントクラスを構築・初期化・追加します。 同じクラスの二重ロードは既存インスタンスを返すだけで無害です。 別の クラスが既存の名前に解決された場合は ComponentLoadError を投げます。
パラメータ
cls
ComponentClass<AiTool<unknown>>
location?
string | null
戻り値
Promise<AiTool<unknown>>
継承元
loadAll()
loadAll(baseDirectory): Promise<void>;
定義: src/component/ComponentStore.ts:95
この種別のすべてのコンポーネントをロードします: 先に明示登録分、
次に <baseDirectory>/<name> のファイル自動探索(baseDirectory 設定時)。
クライアント起動時にレジストリから呼ばれます。
パラメータ
baseDirectory
string | null
戻り値
Promise<void>
継承元
register()
register(...classes): this;
定義: src/component/ComponentStore.ts:77
コンポーネントクラスを明示登録します(ファイル自動探索の代替)。 ComponentStore.loadAll 前ならキューに積まれ、後なら即座に ロードされます(fire-and-forget — インスタンスを待つ場合は ComponentStore.load を使ってください)。
パラメータ
classes
...ComponentClass<AiTool<unknown>>[]
戻り値
this
継承元
toToolSet()
toToolSet(context, timeout?): ToolSet;
定義: plugins/ai/src/AiTool.ts:155
登録済みのツールを AI SDK の ToolSet へ変換します。
execute の失敗は握りつぶさず、ログと aiError を出したうえで
エラー内容をモデルへ返します — ツール1つが落ちても会話全体が
死なないようにするためです。
パラメータ
context
ツールへ渡すコンテキスト。
timeout?
number | false
1回の実行を打ち切るまでのミリ秒。false で無制限。
戻り値
unbind()
protected unbind(component): void;
定義: src/component/ComponentStore.ts:252
ComponentStore.bind の逆操作。アンロード時に呼ばれます。
パラメータ
component
戻り値
void
継承元
unload()
unload(resolvable): Promise<AiTool<unknown>>;
定義: src/component/ComponentStore.ts:200
コンポーネントを取り除きます(ComponentStore.unbind と onUnload を実行)。
パラメータ
resolvable
string | AiTool<unknown>
戻り値
Promise<AiTool<unknown>>
継承元
unloadAll()
unloadAll(): Promise<void>;
定義: src/component/ComponentStore.ts:217
このストアのすべてのコンポーネントをアンロードします(クライアント終了時に使用)。
戻り値
Promise<void>