mcpField
N
nocobase-ai-manager

nocobase-ai-manager

github.com/nocobase開発5539 回インストール8 週間前に更新
リポジトリ

nocobase-ai-manager について

AI エージェント向け、および機能確認後のナレッジベース向けに、NocoBase の AI ランタイムと保存済み LLM サービスを管理するスキルです。CLI と UI の設定経路を明示的に選び、チャットモデルと埋め込みモデルを分けて扱います。

主な機能

  1. 01環境、認証、AI ランタイムの確認
  2. 02プロバイダーと各モデルの検出
  3. 03保存済み LLM サービスのテストと管理
  4. 04変更の検証と依存関係の確認
  5. 05ベクターデータベース設定の振り分け

活用シーン

  1. 01AI エージェント向けコア AI の準備状況確認
  2. 02LLM サービスの設定または検証
  3. 03ナレッジベースの機能確認後のモデル前提条件の準備

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nocobase/skills --skill nocobase-ai-manager

インストール後、Claude Code で/nocobase-ai-managerを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
references/
command-map.md
llm-services.md
security-and-troubleshooting.md
ui-mode.md

詳細

目標

AI 従業員に必要なコア NocoBase AI ランタイムと保存済み LLM サービスを準備・維持します。また、商用機能のゲートを通過した後は、ナレッジベースにも対応します。LLM サービスとベクトルデータベース接続の設定では、直接 CLI で設定するか UI で設定するかを明示的に選択する必要があります。また、チャットモデルの設定、埋め込みモデルの検出、認証情報、依存関係の確認、検証は、それぞれ分けて明示的に行います。

範囲

  • 対象の nb 環境、認証、ランタイムの更新、生成された ai コマンドの内容を確認します。
  • LLM プロバイダー、未保存のプロバイダーモデル、保存済みサービス、チャットモデル、埋め込みモデルを検出します。
  • プロバイダーの設定をテストし、保存済み LLM サービスの作成、更新、有効化、無効化、検証、安全な削除を行います。
  • LLM サービスまたはベクトルデータベース接続の設定を作成・変更する前に、ユーザーに直接 CLI パラメーターか、文書化された UI フローのどちらを使うか選択してもらいます。ユーザーが UI で行った作業は、後続の作業に進む前に検証します。
  • nocobase-ai-employee 向けに、コア AI の準備状況を構造化して提示します。
  • nocobase-ai-knowledge-base-manager がナレッジベース機能を確認した後に限り、LLM/埋め込みモデルの前提条件を提示します。
  • LLM サービスに影響の大きい変更を加える前に、従業員とナレッジベースの依存関係を確認します。

対象外

  • AI 従業員のレコードは管理しません。nocobase-ai-employee を使用してください。
  • ベクトルデータベース、ナレッジベース、ドキュメントの設定は記述しません。ベクトルデータベース接続の作業では、設定方法の選択と UI フローの安全性のみを担当します。直接 CLI での設定と KB 機能の確認は nocobase-ai-knowledge-base-manager に引き継いでください。
  • kb コマンドがないことを Community Edition の証拠として扱いません。
  • AI ツール、スキル、グローバル設定、ロール、従業員テンプレート、移動操作は管理しません。
  • プラグインを直接有効化または無効化しません。プラグイン管理ワークフローを使用してください。
  • 対応する nb api コマンドがある場合は、curl、データベースの直接変更、非公開のアクション、秘密情報を含むレスポンスからコピーした値を使用しません。

入力契約

入力必須デフォルト検証確認の質問
actionはいinspectinspect/configure/update/delete/verify のいずれか「どの AI 前提条件の操作を実行しますか?」
target変更操作の場合:はいinspect の場合は llm-providerllm-provider/llm-service/vector-db のいずれか。vector-db はルーティング/UI 専用です「プロバイダーの確認、保存済み LLM サービスの管理、ベクトルデータベース接続設定のルーティングのうち、どれを行いますか?」
consumerいいえcore-aicore-ai/employee/knowledge-base のいずれか「この準備状況の確認対象は、コア AI、AI 従業員、ナレッジベースのどれですか?」
envいいえnb env list の現在の環境設定済み、到達可能、認証済み「対象とする NocoBase CLI 環境を指定してください。」
identifierupdate/delete/verify の場合:該当時は必須なし保存済み LLM サービスの正確な name、または UI 更新用のベクトルデータベース識別子「サービス名またはベクトルデータベース識別子を正確に指定してください。」
configurationModellm-service または vector-db の configure/update の場合:はいなし。暗黙に選択しないdirect-cli/ui のいずれか「この設定には、直接 CLI パラメーターと NocoBase UI フローのどちらを使用しますか?」
payloadllm-service の direct-CLI configure/update の場合:はいなし許可されたフィールドのみ。シークレットはユーザーが指定「使用するプロバイダー、チャットモデル、オプション、有効状態を指定してください。」
knowledgeBaseCapabilityconsumer=knowledge-base または target=vector-db の場合:変更操作/UI を開く前に必須なしruntimeCapability=available を示す nocobase-ai-knowledge-base-manager の準備状況の結果「ナレッジベースのエディション/プラグイン機能の事前確認は完了していますか?」
confirmation高リスク操作の場合:はいなし正確な対象と影響を提示した後の、改めての明示的な確認「この影響の大きい LLM サービスの変更を実行することを確認しますか?」

ルール:

  • 必須入力または機能の証拠が不足している場合は、変更操作を停止して確認を求めます。
  • ユーザーが「お任せします」と言った場合は、確認と推奨のみを行います。作成、更新、無効化、削除は行いません。
  • 認証情報、プロバイダーキー、サービス名、モデル識別子、ベース URL、非公開 ID を決して捏造しません。
  • LLM サービスまたはベクトルデータベース接続設定を作成または変更する前に、direct-cli と ui のどちらを使うかユーザーに選択してもらいます。ユーザーに代わって選択してはいけません。
  • UI モードでは、文書化された --ui フラグと任意のプロバイダー選択のみを使用します。リクエスト本文のフィールド、認証情報、シークレットは決して含めません。
  • --ui コマンドはフォームを開くだけです。フォームを開いた後は停止し、ユーザーから完了の報告を受けてから再開します。依存する操作を行う前に、安全なフィールドを個別に検証してください。
  • enabledModels.models に指定できるのは、大規模言語モデル/チャットモデルのみです。埋め込みモデルをここに入れてはいけません。
  • 埋め込みモデルは別途検出し、ナレッジベースの設定にのみ返します。
  • 作成操作を暗黙に更新操作へ変換してはいけません。

必須の確認ゲート

  • 確認ラウンドの上限:2。
  • 1 ラウンドあたりの質問数の上限:3。
  • 変更を行う前に、環境、正確なサービス/リソース識別子、プロバイダー、使用予定のチャットモデル、有効状態、シークレットの取得元、利用者、依存関係への影響を確認してください。
  • LLM サービスまたはベクトルデータベース接続を設定/更新する前に、明示的な configurationMode を必須とします。ui の場合は、現在のヘルプで --ui が公開されていることを確認してください。フォームを開いた後は、ユーザーが完了したことを明示するまで待機し、その後、独立して読み戻しを行ってください。
  • target=vector-db の場合、UI を開く前、または直接 CLI 作業を KB マネージャーに引き継ぐ前に、現在の KB 機能を必須とします。
  • ナレッジベースの利用者については、nocobase-ai-knowledge-base-manager から現在の機能結果を必須とします。このスキルは商用エディションのゲートを実行したり、回避したりしません。
  • 無効化、プロバイダーの置き換え、チャットモデルの削除、または削除の前に、参照可能なすべての従業員およびナレッジベースの依存関係を調べてください。
  • ナレッジベースの依存関係を調べられない場合は、依存関係の状態を unknown として扱い、サービスに対する破壊的な変更をブロックしてください。
  • サービスを削除する前には必ず、正確なサービス、環境、依存関係、取り消し不能であることを提示し、destroy の直前に改めて二次確認を取得してください。
  • シークレットを含むコマンドは、保護された一時ファイルの取り扱いを準備するまで実行しないでください。

ワークフロー

  1. nb env list で対象環境を特定してください。nb env info <env> は環境、API、データベース、認証の状況確認にのみ使用し、エディションの検出には使用しないでください。
  2. nb env update <env> --verbose を実行し、続けて nb api ai --help、nb api ai llm-providers --help、nb api ai llm-services --help を確認してください。
  3. コマンドマップと UI モードのワークフローを読み、現在のヘルプで確認できたコマンドのみを選択してください。
  4. LLM サービスまたはベクトルデータベース接続を作成または変更する前に、ユーザーに direct-cli と ui のどちらかを選んでもらってください。モードを推測してはいけません。
  5. ui の場合は、現在のヘルプで --ui が公開されていることを必須とします。ベクトルデータベースの場合は、利用可能な KB 機能の結果も必須とします。省略可能なプロバイダーフラグ以外は付けず、ドキュメントに記載された UI コマンドのみを実行してください。ユーザーがフォームを完了する間は処理を止め、その後、安全なフィールドを独立して読み戻してから続行してください。
  6. target=vector-db で direct-cli の場合は、nocobase-ai-knowledge-base-manager に引き継いでください。このスキルはベクトルデータベースの設定を書き込みません。
  7. プロバイダーとモデルを調べてください。直接 LLM サービスを書き込む内容を構成する前に、検出したすべてのモデルをチャット/LLM または埋め込みに分類してください。
  8. 新規または変更する直接 CLI のプロバイダー設定では、保護された本文ファイルを使用し、保存されていないモデルを検出し、保存前にチャットモデルを指定して test-flight を実行してください。
  9. 正確なサービス名で照会してください。存在しない場合は作成し、安全なフィールドで同等の場合は条件を満たしていると報告し、異なる場合は安全な差分を提示して更新するかスキップするかを尋ねてください。
  10. consumer=knowledge-base の場合は、渡された機能結果を使用し、埋め込みモデルを別途検出してください。保存済みサービスの enabledModels に追加してはいけません。
  11. 無効化、プロバイダー/モデルの置き換え、または削除の前に、従業員からの参照を調べてください。ナレッジベースからの参照は、利用可能な KB 機能を通じてのみ調べてください。その依存関係を読み取れない場合は、破壊的な変更を中止してください。
  12. 要求された変更は一度に 1 つだけ実行してください。シークレットを含む応答の出力を抑制し、プロバイダーの options を決して出力してはいけません。
  13. 安全なフィールドを読み戻し、name、title、provider、enabled、チャットモデルのみの enabledModels を検証してください。
  14. coreAI と条件付きの knowledgeBasePrerequisites を分け、必要に応じて設定モード、UI の完了状況、読み戻し結果を含めた、構造化された準備状況の契約を返してください。
  15. 成功、失敗、中断、ロールバックのいずれの場合も、保護された一時ファイルを削除してください。

参照情報の使い分け

参照情報使用する場面備考
コマンドマップ環境、プロバイダー、サービス、モデル、従業員、または KB 依存関係に関する正確なコマンドを選択する場合。除外されたコマンドの範囲と機能上の境界を含みます。
UI モードのワークフローUI を通じて LLM サービスまたはベクトルデータベース接続を作成・変更する場合。モードの選択、サポートされる --ui コマンド、必要な一時停止、独立した読み戻しについて定めています。
LLM サービスのワークフロー保存済みサービスをテスト、作成、更新、無効化、削除、または検証する場合。チャットと埋め込みの分離、冪等性、準備状態、依存関係の挙動について定めています。
セキュリティとトラブルシューティング認証情報、またはランタイム、認証、プロバイダー、機能、タイムアウト、ロールバックの問題に対処する場合。保護対象のファイルと安全な出力について定めています。

安全性の確認

影響の大きい操作は、以下に挙げる高リスク操作です。

  • ロールバックやクリーンアップのための削除を含む、すべての LLM サービスの削除。
  • 従業員またはナレッジベースが使用しているサービスの無効化。
  • 参照されているサービスのプロバイダー、認証情報、または有効なチャットモデルの変更。
  • ナレッジベースの依存関係の状態を読み取れない場合に処理を続行すること。
  • UI フォームが開いた後、ユーザーによる明示的な完了と独立した読み戻しなしに処理を続行すること。
  • プロバイダーの options、API キー、アクセストークン、UI の認証情報、またはシークレットを含むレスポンス本文を露出させること。

二次確認用テンプレート:

  • 「実行を確認してください:<env> 内の LLM サービス <name> に対する <action>。予想される影響:<employee/knowledge-base dependency and availability impact>。続行するには confirm と入力してください。」

ロールバックの指針:

  • 作成後の検証に失敗した場合:証拠を保持してください。新しいサービスの削除には、新たな個別の確認が必要です。
  • 更新内容に不一致がある場合:以前の安全なフィールドを復元してください。認証情報は再入力する必要があり、ログから復元してはいけません。
  • 削除:元のプロバイダーシークレットとモデル設定がなければ復元できません。
  • UI の結果がない、または一致しない場合:停止して実際の状態を報告してください。成功したと推測したり、新たに明示的なモード選択を得ずに直接 CLI に切り替えたりしてはいけません。
  • KB の依存関係の状態が不明な場合:変更を加えず、推測で対応するのではなく、まず機能の可視性を復元してください。

検証チェックリスト

  • 対象環境、API ベース URL、認証コンテキストを確認済みです。
  • ランタイムの更新が完了し、必要な ai コマンドグループが存在します。
  • LLM サービスまたはベクトルデータベース接続を作成・更新する前に、ユーザーが毎回 direct-cli または ui を明示的に選択しています。
  • 現在のヘルプで UI モードが利用可能であることを確認し、リクエスト本文やシークレットを扱うフラグが含まれていないことを確認したうえで、ユーザーによる完了まで一時停止し、安全なフィールドを独立して読み戻しています。
  • 対象環境からプロバイダーと要求されたモデル識別子を検出済みです。
  • 要求された enabledModels.models[] の各項目は、チャット/LLM モデルです。
  • enabledModels に埋め込みモデルが含まれていません。
  • LLM/埋め込みの変更前に、ナレッジベースの利用者が利用可能な機能の結果を提示しています。
  • 変更したプロバイダー設定は、チャットモデルを使用して test-flight に合格しています。
  • 書き込みペイロードには、文書化された書き込み可能なサービスフィールドのみが含まれ、modelOptions は含まれていません。
  • 作成・更新のたびに、安全なフィールドを独立して読み戻しています。
  • 影響の大きい変更の前に、従業員の依存関係を確認しています。
  • KB の依存関係を確認済みであるか、状態が不明なため影響の大きい操作を阻止しています。
  • すべての destroy の実行直前に、対象サービスを明示した新たな確認を得ています。
  • シークレットと options 全体が、コマンドの要約および最終出力に含まれていません。
  • 許可された設定を少なくとも 1 件、拒否されたケースを少なくとも 1 件、正しく報告しています。
  • エラー、部分的な成功、ロールバックの制限、残る引き継ぎ事項をそれぞれ区別しています。

最小テストシナリオ

  1. 参照のみ:実行環境を更新し、プロバイダーと保存済みサービスを変更せずに一覧表示します。
  2. UI モード:LLM サービス、または機能が承認済みのベクターデータベースのフォームを開き、ユーザーが明示的に入力を完了するまで待機してから、安全なフィールドを個別に検証して次の処理に進みます。
  3. 設定:未保存の設定をテストし、チャット専用の enabledModels を保存して読み戻します。また、機能がすでに承認済みの KB コンシューマーについて、埋め込みモデルを個別に報告します。
  4. 入力不足:プロバイダーの認証情報、サービス名、モードの選択、または必須の KB 機能証拠を省略し、変更がブロックされることを確認します。
  5. 認証/実行環境の障害:更新または ai のヘルプが失敗した場合、スキルが実行を停止し、具体的な復旧手順を提示します。
  6. 依存関係の安全性:サービス削除時に KB の依存関係を確認できない場合、従業員からの参照がなくても削除をブロックします。
  7. 高リスクの削除:依存関係のないサービスは、対象を新たに正確に確認し、存在しないことを検証した後にのみ削除します。

出力仕様

最終回答には以下を含めてください:

  • 対象環境、要求された操作、対象、およびコンシューマー;
  • 実行環境/ヘルプで確認した機能;
  • 選択した direct-cli または ui モード。UI の場合は、ユーザーからの完了報告と独立した読み戻し結果;
  • プロバイダー、サービス名、チャットモデル、および個別に検出した埋め込みモデル;
  • 秘密の値を含めずに実行したコマンド;
  • 安全なフィールドの読み戻し;
  • 構造化された coreAI と、条件付きの knowledgeBasePrerequisites の準備状況;
  • 依存関係の状態(KB の可視性が不明な場合はその旨も含む);
  • ガードされた操作、一部成功、ロールバックの制限、および引き継ぎ事項;
  • 適用したデフォルトまたは前提。

参考資料

コメント