notis-skill-creator について
notis-skill-creatorは、スキルの作成、改良、パッケージ化を支援する手順を示します。Notisスキルの管理者向けで、状態管理、スキルツール、検証に関する固有の指針が含まれます。
主な機能
- 01スキル構成と内容の計画
- 02Notisデータベースでの状態管理指針
- 03実行時インテリジェンスポリシー指針
- 04作成・更新・パッケージ化の手順
- 05検証と同期の確認
活用シーン
- 01スキルの新規作成
- 02既存スキルの改良やパッケージ化
- 03Notisでの永続状態の計画
- 04公開前のスキル検証
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ mindtheflo/ notis-skills --skill notis-skill-creatorインストール後、Claude Code で/notis-skill-creatorを入力して読み込まれたか確認します。
詳細
Notis スキル作成ツール
このスキルでは、新しいスキルを一から作成する手順や、既存のスキルを反復して改良する手順を説明します。スキルとは、アシスタントの機能を拡張する、手順、参考資料、任意のスクリプトをまとめた独立した単位です。
このスキルを使う場面
- ユーザーが新しいスキルの作成を希望している場合(例:「X 用のスキルを作成してください」「Y を実行するスキルが必要です」)
- ユーザーが既存のスキルを改良またはパッケージ化している場合
- スキルの構成、検証、配布方法についてユーザーから質問された場合
スキル開発のワークフロー
ステップ 1:スキルを定義する
ファイルを作成する前に、次の点を明確にします。
- 名前 — ケバブケース(例:
my-skill、api-helper) - 説明 — スキルの機能と使用する場面を、1~2 文で説明します
- 範囲 — 手順のみか、手順にスクリプト/参考資料/アセットを加えるか
ステップ 2:内容を計画する
- SKILL.md — 必須です。YAML フロントマター(
name、description)と主要な手順を記述します。 - scripts/ — 任意です。アシスタントが実行できるコード(Python、Bash など)を配置します。
- references/ — 任意です。必要に応じて読み込むドキュメントや参考ファイルを配置します。
- assets/ — 任意です。出力に使用するテンプレート、画像、その他のファイルを配置します。
- 状態 — スキルが実行間で何らかの情報(履歴、進捗、承認、キュー、キャッシュ、結果など)を保持する場合は必須です。スキルは Notis バックエンドで実行されることがあり、その場合ローカルファイルは保持されないため、あらかじめ Notis データベースを計画します。
- 適切なデータベース(
LOCAL_NOTIS_DATABASE_LIST_DATABASES)を再利用するか、LOCAL_NOTIS_DATABASE_UPSERT_DATABASEで作成し、スキルが属する Space にそのメインビューを関連付けます(notis-query のデータベース検出リファレンスを参照)。キーとなるプロパティ名と、各実行で読み書きするフィールドを指定します。 - データベースのスラッグに対して
LOCAL_NOTIS_DATABASE_GET_DATABASEが返すrow_write_toolを使って行を書き込むよう、スキルに指示します。生成されたツール名をハードコードしてはいけません。 - ユーザーが保持するドキュメントは、ローカルファイルではなく Notis のドキュメントまたはレポートに保存します。
- スクリプトが書き込めるのは、一時ディレクトリ内の作業用ファイルのみです。スキルフォルダーは同期時にアップロードされるため、スキル自身のフォルダーには書き込みません。
- 適切なデータベース(
- モデル処理 — 生成、分類、調査は、スキルを実行するエージェントまたはそのサブエージェントが担当します。ユーザーが明示的に求めた場合に限り、モデルプロバイダー API を呼び出すスクリプトを同梱します。
インテリジェンスと呼び出し時のオーバーライド
- 委任する各ステップには、その作業に応じて
low、medium、highを指定します。スキルでレベルを指定していない場合はhighを使用します。手順、スクリプト、テンプレート、例には、ベンダーのモデル名、バージョンの固定指定、ファミリーの別名、価格表、独立した作業量の対応表を含めないでください。 - 共有の
contractと現在のハーネスの対応付けの両方について、LOCAL_NOTIS_GET_INTELLIGENCE_POLICYを直接、または認証済みの Notis CLI 経由で使用します。リポジトリにあるスキルとアカウントにインストールされたスキルの両方で、同じランタイム契約を使用します。インテリジェンスに関する指針として、チェックアウト相対のdocs/リンクを必須にしてはいけません。モデルと作業量をまとめて解決し、レベルから作業量を推測しないでください。 - この呼び出しにおけるユーザーの明示的な選択は、特定のモデルや作業量の指定も含め、スキルのデフォルトより優先されます。求められない限り、保存済みのアカウントのデフォルトは変更しません。
- 固定モデルのハーネスは現在の設定を引き継ぎ、要求されたレベルが適用されなかったことを報告します。特定の選択を必須とする自動ランチャーは、現在のポリシーを取得できない場合、副作用が発生する処理を始める前に停止します。フォールバックを推測してはいけません。
- メディアは、ハードコードされた画像/音声/動画エンジン名ではなく、検出された機能を通じてリクエストします。実際に使用されたモデルのレシートは来歴情報として保持します。スキーマが結果を生成した実際の識別子を要求する場合、レベルを保存してはいけません。
- ポリシーの変更、明示的なオーバーライド、未対応のハーネス、取得不可の状況で検証します。毎週の対応付けの変更に、スキルの編集が必要になってはいけません。
ステップ 3:スキルの初期化
ここで、実際にスキルを作成します。
開発中のスキルがすでに存在し、反復またはパッケージ化が必要な場合に限り、このステップをスキップしてください。その場合は次のステップに進みます。
新しいスキルを一から作成する場合は、ディレクトリ構造を手動で作成します。
mkdir -p my-skill/scripts my-skill/references my-skill/assets
次に、適切な YAML フロントマターを含む my-skill/SKILL.md を作成します。
---
name: my-skill
description: "Description of what this skill does and when to use it"
---
# My Skill
## Instructions
(Add your skill instructions here)
サポートファイルがあれば、適切なディレクトリに作成します。
- 実行可能コード(Python、Bash など)には
scripts/ - 必要に応じて読み込むドキュメントには
references/ - 出力で使用するファイル(テンプレート、画像など)には
assets/
ステップ 4:作成と反復
- 指示を明確で実行可能なものにします。スキルを使用するタイミング、必要な入力、期待される出力を含めてください。
- スクリプトやアセットはパス(例:
scripts/helper.py、references/glossary.md)で参照します。 - 実際のシナリオでアシスタントにスキルを実行させて、スキルをテストします。
ステップ 5:該当するスキルを保存または更新する
ネイティブのスキルツールを検出し、まず現在インストールされているスキルの一覧を読み取ります。
既存のスキルは、(LOCAL_NOTIS_LIST_SKILLS に記載された)正確な ID、所有者、Space リンクに基づいて特定してください。名前が最初に一致したものを選んではいけません。編集ではその ID を更新し、新規作成は本当に新しいスキルの場合に限ります。
- 単一ファイルの作成:検出した
LOCAL_NOTIS_CREATE_SKILLをname、description、skill_mdとともに使用します。単一ファイルの編集:LOCAL_NOTIS_UPDATE_SKILLをskill_idと変更したフィールドのみで使用します。無関係なagent_targetsとstatusは保持してください。 - 複数ファイルの作成または更新:SKILL.md、scripts、references、assets を含む完全なフォルダーをパッケージ化します。検出した CREATE または UPDATE ツールで、CLI の
--file bundle_url=./skill.zipアップロードパスを使用します(UPDATE にはskill_idを含めます)。架空の公開 URL 通知を待ったり、既存のリソースを削除したりしないでください。 - 厳選されたスキルは正規のソースで管理され、別途公開されます。通常のユーザースキルの更新で、厳選されたコンテンツを置き換えることはできません。Space にリンクされた Skill は共有リソースです。編集すると、それをリンクしているすべての Space に反映され、Space ソースのデプロイでは、変更された Skill フォルダーがリリースとともにコミットされます。
- フロントマター、リソースパス、意図した変更を検証し、変更をドライランします。同じ ID、コンテンツ、保持された割り当てを読み戻して確認します。バンドルの場合は、リソース一式を検証します。更新によってインストール済みレコード数が増加してはなりません。
- ネイティブのスキルリンクを提供します。ユーザーから求められた場合に限り、zip をエクスポートして提供します。
SKILL.md のフロントマター
すべてのスキルには、少なくとも以下を含む SKILL.md が必要です。
---
name: skill-name
description: "Clear description of what the skill does and when to use it."
---
- name — kebab-case 形式の識別子です。パッケージ化と表示に使用されます。
- description — スキル一覧に表示され、振り分けに使用されます。具体的に記述してください。
ベストプラクティス
- 目的を明確にする — 各スキルは、ひとつのことを適切に実行できるようにします。
- 適切な説明を記述する — 説明はスキルを呼び出すタイミングの判断に使われます。検索しやすく、正確に記述してください。
- 一貫した構造にする — ユーザーとツールがファイルの場所を把握できるよう、
scripts/、references/、assets/を一貫して使用します。 - パッケージ化する前に検証する — フロントマター、命名規則、参照されるすべてのファイルの存在を確認します。
- 状態は Notis に保存する — 後続の実行で必要になる情報は、Notis のデータベース行またはドキュメントに保存してください。スキルフォルダーやマシン上のファイルには保存しないでください。
Notis 固有の注意事項
- 製品ソースは
server/skills/に、開発ワークフローは.agents/skills/にあります。生成されたミラーやベンダーキャッシュを正規のソースとして編集しないでください。 - CLI が所有する同期機能は、アカウントバンドルを実体化し、エージェントごとのリンクを管理します。Desktop の自動同期は任意です。行を保存しただけでは、ローカルで利用可能になったことの証明にはなりません。ターゲットの割り当てを保持し、対象アカウントでサポートされている同期ワークフローを使用してください。利用可能だと主張する前に、コンテンツの実体化と検出を確認します。
- リポジトリのメンテナーは
docs/notis-skills-lifecycle.mdとdocs/skills-sync.mdに従ってください。
コメント
Markdown 対応