kntnt について
kntntは、単一の名前空間付きエントリーポイントから、他のコレクションスキルを呼び出して管理するスキルです。呼び出し引数を解析して動詞ごとの手順に従い、プロジェクト範囲、確認オプション、一時環境でのドライランに対応します。
主な機能
- 01単一の名前空間付きエントリーポイント
- 02動詞によるコレクションスキルの振り分け
- 03グローバルまたはプロジェクト単位の範囲
- 04呼び出しフラグとオペランドの引き継ぎ
- 05一時ホームでのドライラン実行
活用シーン
- 01/kntnt経由でコレクションスキルを呼び出す
- 02プロジェクト用のスキルを選択・更新する
- 03マシンに変更を加えず変更操作を試す
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ kntnt/ skills --skill kntntインストール後、Claude Code で/kntntを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
catalog.jsonharness-paths.jsonhelp.mdagents/openai.yamlfeatures/session-cleanup/instructions.mdFEATURE.mdfeatures/session-cleanup/scripts/session_cleanup.pyfeatures/statusline/statusline.shFEATURE.mdfeatures/statusline/scripts/statusline_feature.pyhelp/help.mduninstall.mdupdate.mdselect.mdlibrary/references/invocation-envelope.mdchangelog.mddelivery.mdlibrary/scripts/argument_grammar.pycredentials.pyintegrations.pylanguages.pyship.pyscripts/kntnt.pysteps/help.mdselect.mdupdate.mduninstall.md詳細
kntnt
マネージャーです。名前空間付きのエントリーポイントは1つです。それ以外のコレクションスキルは、それぞれの名前で呼び出します。
$HERE はこの SKILL.md を含むディレクトリで、$LIBRARY は同梱されている Collection Library($HERE/library/)です。
依存関係。 PATH 上に uv が必要です。見つからない場合は停止し、https://docs.astral.sh/uv/ から uv をインストールするようユーザーに伝えてください。
呼び出し
呼び出しペイロード(ユーザーが /kntnt の後に入力した内容すべて。何行であっても、そのまま)を標準入力に渡して、uv run "$HERE/scripts/kntnt.py" invoke --here="$HERE" を実行します。終了コードが 0 の場合は、出力された JSON に従って続行します。それ以外の終了コードの場合、既知の構成ミスをこちらが発生させており、ユーザーの要求と権限を保ったまま修正できるなら、すでに生じた影響を考慮して、同じエンジンを通じて修正した呼び出しを送信し、失敗した境界から続行します。操作開始前の拒否では、操作は消費されません。それ以外の場合は、標準出力をそのまま表示して停止します。ユーザーに表示すべき内容はすでに出力されており、そのテキストを書くのはあなたの役割ではありません。ユーザーが入力した内容は決して修正しないでください。また、完全一致のヘルプ、満たされていない依存関係、無関係な失敗、原因または有効な修正方法が不明な失敗について、自動で再試行してはいけません。
JSON では、path は動詞を1語のリストで表し、単独の /kntnt の場合は空です。flags にはユーザーが記述した各フラグを格納します。単独で指定されたフラグは true、値を伴うフラグはその値、繰り返し指定されたフラグは値のリストになります。operands はフラグの後に続く内容を順番どおりに格納します。instruction は Contextual Instruction、または null です。これによって確定できる内容は $LIBRARY/references/invocation-envelope.md に記載されています。
引数
すべての動詞で --project は同じように読み取られます。指定なし、または --project=off は Global、--project または --project=on はこの Project を意味します。Select と Update はそのレイヤーを変更し、Select はそのレイヤーを一覧表示します。Uninstall では --project を指定できません。Uninstall はこのマシンをクリアし、作業ディレクトリにある独自のコピーはそのプロジェクトに属します。
動詞が対象とする Harnesses を尋ねたり、記録したりすることはありません。そのレイヤーに存在するすべての Harness に対して、毎回実行時に処理します。
--yes は「はい」とみなす指定です。「はい」か「いいえ」で答えられる質問は一切しません。実際に Global Update を行う場合、後続の確認を省略できるのは、現在の Formal Invocation に --yes が指定されている場合だけです。Contextual Instruction、Conversation Context、以前の指示、修正依頼、または引き継ぎから推測してはいけません。
--dry-run は、変更を伴う動詞を、このコレクション独自のファイルを配置した一時ホームに対して実際に実行し、実行終了時にそのホームを破棄します。マシン上では何も変更されず、返されるのは、実行されていたであろう内容の説明ではなく、その動詞自体の結果です。専用の npm キャッシュを使用するため、トランスポートは新たにダウンロードされ、プレビュー対象の実行よりかなり時間がかかります。開始前にそのことを伝えてください。dry_run を含むペイロードは、その実行結果です。結果として報告し、マシン上では何も変更されていないことも同時に伝えてください。また、directories は実際のディレクトリに対応する Sandbox 内のコピーとして読み取ってください。コピーは一時ホーム内の dry_run.sandbox 名の下にあり、ペイロードを読む時点では、そのホームはすでに存在しません。
手順
pathにある1語が動詞です。pathが空の場合は単独の/kntntを意味し、これはhelpです。$HERE/steps/<verb>.mdを読み、記載に従ってください。フラグはそのまま渡します。trueとして読み取られたフラグは単独の名前で、値付きで読み取られたフラグは--flag=valueで渡し、リストとして読み取られたフラグは値ごとに1回渡します。実行を成功させるためにフラグを省略してはいけません。停止するよう指示されたら終了します。