mcpField
C
create-bkn

create-bkn

github.com/kweaver-aiデータ・データベース56 回インストール
リポジトリ

create-bkn について

create-bknは、MarkdownとYAML frontmatterを使ってBKN v2.0.1準拠のディレクトリと定義ファイルを生成するスキルです。ナレッジネットワークを作成するエージェント向けに、型別ファイルやテンプレート、検証手順を提供し、kweaver-coreでの検証・インポートにもつなげられます。

主な機能

  1. 01定義型ごとに整理したBKNディレクトリの作成
  2. 02MarkdownとYAML frontmatterの使用
  3. 03型別テンプレートと形式ルールの提供
  4. 04ID、参照、ビジネスルール配置の確認
  5. 05kweaver CLIによる検証またはインポート

活用シーン

  1. 01ナレッジネットワーク用のBKN定義ファイル作成
  2. 02オブジェクト、関係、アクション別の定義
  3. 03ディレクトリ構成とファイル間参照の確認
  4. 04BKNを検証してプラットフォームへプッシュ

インストール

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

$npx skills add https://github.com/kweaver-ai/kweaver-sdk --skill create-bkn

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

同梱ファイル

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

assets/templates/
action_type.bkn.template
concept_group.bkn.template
network_type.bkn.template
object_type.bkn.template
relation_type.bkn.template
references/
SPECIFICATION.llm.md
references/examples/k8s-network/
CHECKSUM
network.bkn
references/examples/k8s-network/action_types/
cordon_node.bkn
restart_pod.bkn
references/examples/k8s-network/concept_groups/
k8s.bkn
references/examples/k8s-network/object_types/
node.bkn
pod.bkn
service.bkn
references/examples/k8s-network/relation_types/
pod_belongs_node.bkn
service_routes_pod.bkn

詳細

BKN の作成

v2.0.1 に準拠した、正しい形式の BKN ディレクトリ(Markdown + YAML フロントマター)を生成します。

kweaver-core との連携

create-bkn は .bkn ツリーを作成します。ファイルの作成後、kweaver-core が kweaver auth login と kweaver bkn push / pull を実行します。

BKN とは

BKN はスキーマを記述する Markdown + YAML フロントマターです。型ごとのサブフォルダーに定義ごとに 1 ファイルを配置します。詳細(セクション、必須テーブル、型)については、references/SPECIFICATION.llm.md を参照してください。

ディレクトリ構成

{network_dir}/
├── SKILL.md
├── network.bkn
├── CHECKSUM                 # optional; SDK may generate
├── object_types/
├── relation_types/
├── action_types/
├── concept_groups/
└── data/                    # optional CSV instance data

ワークフロー

  1. 要件を収集する — オブジェクト、リレーション、アクション、任意のコンセプトグループ
  2. 仕様を読む — references/SPECIFICATION.llm.md(形式ルール、セクション、フロントマターの型)
  3. テンプレートを選ぶ — assets/templates/(network_type.bkn.template、object_type.bkn.template、…)からコピーして調整します
  4. network.bkn を作成する — ルートファイルです。Network Overview と整合させます
  5. object_types/*.bkn を作成する — オブジェクトごとに 1 ファイル、{id}.bkn
  6. relation_types/*.bkn を作成する — リレーションごとに 1 ファイル
  7. action_types/*.bkn を作成する — アクションごとに 1 ファイル
  8. concept_groups/*.bkn を作成する — 任意
  9. network.bkn を更新する — Network Overview にすべての ID を記載します
  10. BKN ディレクトリのルートに SKILL.md を追加する — network.bkn と同じフォルダーに配置します(これは create-bkn のスキルファイルではありません)。そのネットワーク向けのエージェント用ガイドです(納品する BKN:ルートの SKILL.md を参照)
  11. レビューする(必須) — 検証チェックリスト と ビジネスルールの配置を照合し、ID、相互参照、見出しを修正します
  12. 検証する(必須) — kweaver bkn validate <dir>(検証を参照)
  13. インポートする(任意)— kweaver bkn push <dir>

インポート(kweaver CLI)

@kweaver-ai/kweaver-sdk の kweaver CLI が必要です(npm install -g @kweaver-ai/kweaver-sdk、Node.js 22+)。push は tar を使用します。macOS では、ツールによって COPYFILE_DISABLE=1 が設定されます。

  • プラットフォーム認証 — 対象プラットフォームの有効なトークンをすでに持っている場合(kweaver auth status)、kweaver auth login を再実行しないでください。未認証の場合は、最初に kweaver auth login <platform-url> を実行してください。
  • BKN の検証 — ワークフローの手順 12(kweaver bkn validate <dir>)でこのディレクトリの検証がすでに成功している場合、.bkn ファイルを変更していない限り、push の前に検証を繰り返す必要はありません。まだ検証していない場合は、push の前に validate を実行してください。
kweaver bkn push <dir> [--branch main] [-bd <business-domain>]

-bd / --biz-domain は任意です。省略した場合、CLI はビジネスドメインを自動的に解決します(環境変数 KWEAVER_BUSINESS_DOMAIN、次に ~/.kweaver に保存されたプラットフォーム設定、それ以外の場合は bd_public)。

エクスポート:kweaver bkn pull <kn-id> [<dir>]。その他のサブコマンド:kweaver bkn --help(読み込み済みの場合は kweaver-core のスキルを参照)。

検証

kweaver bkn validate <dir> — 納品またはアップロードの前に成功させる必要があります。network.bkn と同じ階層の .bkn ファイルを読み込みます。成功すると件数が表示されます。失敗した場合は .bkn ファイルを修正し、再実行してください。

タイプ別リファレンス

種類仕様(セクション)テンプレート例(k8s)
ネットワークspec の knowledge_networkassets/templates/network_type.bkn.templatereferences/examples/k8s-network/network.bkn
オブジェクトobject_typeassets/templates/object_type.bkn.templatereferences/examples/k8s-network/object_types/pod.bkn
リレーションrelation_typeassets/templates/relation_type.bkn.templatereferences/examples/k8s-network/relation_types/pod_belongs_node.bkn
アクションaction_typeassets/templates/action_type.bkn.templatereferences/examples/k8s-network/action_types/restart_pod.bkn
概念グループconcept_groupassets/templates/concept_group.bkn.templatereferences/examples/k8s-network/concept_groups/k8s.bkn

すべてのルールと任意のセクションについては、references/SPECIFICATION.llm.md を参照してください。

命名規則

  • ID:小文字、数字、アンダースコアを使用します。ファイル:該当するフォルダー内に {id}.bkn として配置します
  • 見出し:# はネットワークタイトル、## はタイプブロック、### はセクション、#### はロジックプロパティに使用します
  • フロントマター:少なくとも type、id、name が必要です(各タイプについては spec を参照)

ビジネスルールの配置

ルールをインポート時に保持するには、仕様で定められた場所に記述する必要があります。全文については、references/SPECIFICATION.llm.md を参照してください。

  • ネットワークレベル — network.bkn の # {title} の直後に文章で記述します(## Network Overview などの構造化セクションより前)
  • タイプレベル — 各タイプのファイルで、## ObjectType: / ## RelationType: / … の後、最初の ### より前に文章で記述します。フロントマターには記述しないでください
  • プロパティレベル — Data Properties テーブルの Description 列に記述します
  • 追加セクション禁止 — 標準セクション以外の Markdown を追加しないでください。パーサーはインポート時に解析できないコンテンツを削除する場合があります

検証チェックリスト

  • ルートに network.bkn があり、フロントマターが仕様に準拠している
  • すべての .bkn に有効な YAML フロントマター(type、id、name)がある
  • ファイルが type に対応するフォルダー(object_types/、relation_types/、…)に配置され、ファイル名が {id}.bkn になっている
  • Network Overview にすべての定義 ID が記載されている(不足や余分な ID がない)
  • リレーション/アクションが既存のオブジェクトタイプ ID を参照し、概念グループには既存のオブジェクトのみが列挙されている
  • パラメーターのバインディング Source が property | input | const のいずれかである。YAML ブロック(例:trigger)が解析できる
  • 見出し階層に飛び越しがない
  • ビジネスルールが許可された場所にのみ記述されている(ビジネスルールの配置 を参照)

出力ルール

  1. 生の .bkn コンテンツを出力します。ファイル全体をフェンス付きの markdown ブロックで囲まないでください
  2. リレーション/アクション間で ID を一貫して再利用します
  3. ID:小文字とアンダースコアを使用します。表示テキストは、特に指定がない限り中国語にします
  4. 仕様に従って見出しの順序を維持します

例

提供する BKN:ルートの SKILL.md

ナレッジネットワークディレクトリ {network_dir}/ を作成するときは、ルート(network.bkn と同じ階層)に {network_dir}/SKILL.md を追加してください。概要とファイルパス付きのインデックステーブル(object | path | relation | path | action | path)を記載すると、エージェントはファイルをスキャンせずに適切な .bkn を選択できます。トポロジーの概略図や使用シナリオは任意です。例:references/examples/k8s-network/SKILL.md。

コメント